123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- <HTML>
- <HEAD>
- <TITLE>Fped GUI Manual</TITLE>
- </HEAD>
- <BODY>
- <H1>Fped GUI Manual</H1>
- This manual introduces the basic concepts of Fped and explains the elements
- of the graphical user interface. Please refer to the file
- <A href="README">README</A> for more
- technical details and a discussion of the scripting language used by fped.
- <H1>Objects and instances</H1>
- Footprints tend to be highly repetitive, with many pads placed in a
- simple geometrical pattern. With fped, the user specifies the elements
- to repeat and the way they are repeated. Fped then generates the
- repetitions automatically.
- <H2>Hands-on example</H2>
- <P>
- Here is a simple example that illustrated the basic steps of constructing
- things with fled:
- <UL>
- <LI> Start fped without a command-line argument.
- <LI> Right-click on the yellow field that says "(root)" and select
- "Add loop". An entry saying "_ = 0 ... 0 (0)" appears next to the
- yellow field.
- <P><IMG src="manual/intro-1.png">
- <LI> Click on the underscore, type <B>n=1,5</B> and press Enter.
- The entry should now show "n = 1 ... 5 (1 2 3 4 5)"
- <P><IMG src="manual/intro-2.png">
- <LI> Click on the dark-yellow vector icon on the right-hand side.
- A red frame shows that it is selected.
- <LI> Move the mouse pointer to the green dot in the middle of the
- black canvas. A red circle appears when the pointer is over the
- dot.
- <LI> Press the left mouse button, drag a little to the right, and
- release the mouse button. A white line appears and changes
- to dark yellow after the button is released.
- <LI> Click on the yellow line. It is now shown in bright yellow and
- a number of text entry fields appear below the canvas.
- <P><IMG src="manual/intro-3.png">
- <LI> Click into the field on the top that probably says "0.1mm",
- change it to <B>n*1mm</B> and press Enter.
- <LI> Select "Zoom all" from the "View" drop-down menu. The canvas
- should now show the green dot on the left, with a yellow arrow
- pointing to the right, and four more even darker arrows following
- that arrow.
- <P><IMG src="manual/intro-4.png">
- <LI> Click on the icon depicting a light-blue circle.
- <LI> Move the mouse pointer over the green dot, then drag to the
- circle at the end of the vector, and release the mouse button.
- A series of partial circles should appear.
- <P><IMG src="manual/intro-5.png">
- <LI> Select "Zoom all" again to show the full circles.
- <P><IMG src="manual/intro-6.png">
- </UL>
- The graphical items you have entered are a vector and a circle with the
- radius determined by the vector. We call these items "objects". Furthermore,
- you have defined a variable that gets set to the values from 1 to 5, in
- increments of one. Fped had repeatedly drawn the objects for each such
- value. We call the item that have been drawn "instances".
- <P>
- The innermost vector and circle are highlighted. You can highlight other
- instances of the same objects by clicking on the numbers (1 2 3 4 5) shown
- next to the loop.
- <H2>Conceptual view</H2>
- The following picture illustrates the concept: the model is defined in
- terms of objects, in this case a vector from the origin to the circle's
- center, a vector for the radius, and the circle itself.
- <P>
- <IMG src="manual/concept-inst.png">
- <P>
- The vector to the center uses a variable that gets iterated through the
- values 0, 1, and 2. For each iteration, an instance is generated.
- <P>
- Only the instances of silk screen objects and pads are exported to KiCad.
- Elements used for construction, such as vectors, only appear in fped.
- <H1>Frames</H1>
- Frames serve various purposes:
- <UL>
- <LI> To structure the footprint drawing by grouping like elements.
- For example, one may want to place pads, outline, and the keep-out
- area in different frames, and probably subdivide some of those
- constructs even further.
- <LI> To define an element that is used in several places. For example,
- a pad.
- <LI> To define a repetition through a loop or a table.
- <LI> To set variables for child frames.
- </UL>
- At the bottom of the hierarchy, we have the root frame. To add another
- frame, right-click on the root frame's label "(root)" and select "Add
- frame".
- <P>
- To be able to put items into the new frame, it has to be attached to
- the root frame (or to any other frame that's attached). This is called a
- <I>frame reference</I>. First, we need a place to attach it to. This
- can be the origin of its parent frame or it can be the end of a vector
- in the parent frame. To create the frame reference, do this:
- <P>
- <UL>
- <LI> Click on the parent frame to select it.
- <LI> Press the left mouse button on the frame you wish to reference
- and drag it (move the mouse pointer while keeping the left button
- pressed) into the canvas. When dragging, the mouse cursor changes
- to show a hand.
- <LI> When the mouse pointer is above a suitable point of attachment,
- the point of attachment is highlighted with a red circle and the
- mouse cursor changes to show a hand with a plus sign.
- <LI> At the desired location, release the mouse button.
- </UL>
- If you wish to cancel the operation, simply release the mouse button at
- any place that isn't a point of attachment.
- <H1>Variables</H1>
- <H1>Iconography</H1>
- The right-hand side of the fped window shows the component being drawn on a
- black background. We call this the canvas. It is surrounded by a toolbar on
- the right side and a few buttons with visibility options at the top.
- <H2>The canvas</H2>
- <H2>Blue screen</H2>
- When an expression uses an unknown variable or evaluates to an incorrect
- value (e.g., a bare number where a dimension is expected), the
- instantiation fails. Fped indicates this by changing the background color
- of the canvas from black to blue. The cause of the failure is explained
- in the status bar at the bottom.
- <P>
- In this state, the canvas is no longer updated when making changes until
- the problem has been resolved. The most common causes are a misspelt
- variable name in an expression, the use of a number without unit where a
- dimension is expected, or the removal of a variable that's still used
- somewhere.
- <P>
- If the location of the error is not obvious, the list of objects can be
- shown by selecting "Show code" from the View menu. The object
- in which the error occurred is shown in red. If the error occurred in a
- loop variable, the variable name is shown in red.
- <H2>Visibility options</H2>
- When working on a complex component, the number of elements shown can be
- overwhelming. The visibility options help to quickly hide irrelevant
- details and get one's bearings. They are located in the menu bar at the
- top.
- <DL>
- <DT><IMG src="manual/all.png"> <IMG src="manual/all_off.png">
- <DD>Show all frames. If disabled, only show the currently active frame.
- <DT><IMG src="manual/stuff.png"> <IMG src="manual/stuff_off.png">
- <DD>Show vectors and frames.
- <DT><IMG src="manual/meas.png"> <IMG src="manual/meas_off.png">
- <DD>Show measurements.
- <DT><IMG src="manual/bright.png"> <IMG src="manual/bright_off.png">
- <DD>Highlight the elements that will be exported to KiCad, i.e.,
- the pads and the silk screen drawings. To show the component
- exactly as it will appear in KiCad, also turn off vectors,
- frames, and measurements.
- </DL>
- The visibility options can be combined.
- <H2>Tools</H2>
- Tools are used to add new elements and to manipulate existing ones.
- <DL>
- <DT><IMG src="manual/point.png">
- <DD> The pointer. This is the default tool. The pointer is used to
- select items and do move points of the selected item.
- <P>
- Clicking on an item selects it. If items overlap, the one with the
- highest priority is selected. The priority is based on how difficult
- it usually is to select an item, with frame references having a low
- priority, pads, circles, arcs, rectangles, measurements, and lines
- having increasingly higher priorities. There are a few special cases:
- <UL>
- <LI> The circle at the end of a vector has the highest priority
- while its line has the lowest priority.
- <LI> To select a frame reference, click on the L-shaped upper left
- corner.
- <LI> To select a measurement, click on the line with the text, not
- the (hypothetical) line connecting the points being measured.
- </UL>
- If multiple items are under the mouse pointer, repeatedly clicking
- iterates through them.
- <P>
- To move points, select the item, then move the mouse pointer over
- the point to move. A red circle will appear under the mouse pointer.
- Then drag the point to its new location and release the mouse button.
- <DT><IMG src="manual/delete.png"> <IMG src="manual/delete_off.png">
- <DD> Delete the currently selected item. Whenever an item is selected,
- the delete icon lights up. Clicking the icon deletes the item.
- To undelete the item, press <B>U</B>.
- <DT><IMG src="manual/vec.png">
- <DD> Add a vector. To add a new vector, move the mouse pointer to the
- new vector's starting point then drag towards the desired end point.
- Vectors are normally specified via parameters. To enter the parameters,
- click on the new vector.
- <P>
- Note that the starting point of the vector has to be in the same
- frame as the vector being drawn. This limitation also applies to
- points defining pads and silk-screen items.
- <DT><IMG src="manual/pad.png"> <IMG src="manual/rpad.png">
- <DD> Add a pad. Pads are either rectangular or rounded. They are
- defined by two points which are opposite corners of the rectangle
- containing the pad. Move the mouse cursor to the first point, then
- drag to the second point. The pad's name can be edited after selecting
- the pad.
- <DT><IMG src="manual/hole.png">
- <DD> Add a hole. There are two purposes for holes:
- <UL>
- <LI> Pins of through-hole components. In this case, the hole has to be
- inside a pad.
- <LI> Mechanical support. In this case, the hole has to be outside any
- pads.
- </UL>
- The construction of holes is the same as for pads.
- <DT><IMG src="manual/line.png"> <IMG src="manual/rect.png">
- <DD> Add a line or a rectangle. Similar to pads, lines and rectangles
- are defined by two points. The width of the line can be edited after
- selecting the line or rectangle.
- <DT><IMG src="manual/circ.png">
- <DD> Add circle or arc. Circles are defined by their center end a
- point at their radius. An arc has a third point, which defines the
- angle at which the arc ends. If this third point is not located on
- the radius, the arc ends where an imaginary line between the center
- and the end point would intersect with the radius.
- <P>
- An arc is made by first drawing a circle with the radius point at
- the location where the arc should start. Then click and hold the
- radius point to drag the end point to the desired location.
- <P>
- To change the radius point of a circle, first drag the end point,
- then drag the radius point itself to that same location.
- <DT><IMG src="manual/meas.png"> <IMG src="manual/meas_x.png">
- <IMG src="manual/meas_y.png">
- <DD> Add a measurement. Measurements show the distance between points.
- They can either measure diagonally or only horizontally or only vertically.
- Unlike other items, measurements are not limited to points in the same
- frame. Instead, they operate on the minimum, maximum, and next greater
- coordinates of instances of objects.
- <P>
- A measurement is added as follows:
- <UL>
- <LI> Click on one of the three measurement icons to select the
- measurement type. All possible endpoints are highlighted.
- <LI> Drag from the desired starting point. Now all the endpoints
- available for this starting point are highlighted.
- <LI> Drag to the endpoint and release the mouse button. The measurement
- will now appear as a double-headed arrow and text between the two
- points (if this is a diagonal measurement) or extending vertically or
- horizontally from one of the two points.
- <LI> To move the measurement arrow away from the two points, select
- the measurement and set an offset.
- </UL>
- Sometimes, the second point becomes unavailable after selecting the
- first point. This means that the two points are not a minimum or maximum,
- or a minimum and the next greater neighbour. In this case, just try
- another pair of points measuring the same distance.
- </DL>
- <H1>Keyboard shortcuts</H1>
- </BODY>
- </HTML>
|