|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.electric.technology.Technology
com.sun.electric.technology.technologies.Artwork
public class Artwork
This is the general purpose sketching technology.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.sun.electric.technology.Technology |
---|
Technology.ArcLayer, Technology.Distance, Technology.DistanceContext, Technology.DistanceRule, Technology.MultiCutData, Technology.NodeLayer, Technology.SizeCorrector, Technology.TechPoint, Technology.TechSetting |
Field Summary | |
---|---|
PrimitiveNode |
arrowNode
Defines a Arrow node. |
static Variable.Key |
ART_COLOR
key of Variable holding color information |
static Variable.Key |
ART_DEGREES
Key of Variable holding starting and ending angles. |
static Variable.Key |
ART_MESSAGE
key of Variable holding message text. |
static Variable.Key |
ART_PATTERN
key of Variable holding color information |
PrimitiveNode |
boxNode
Defines a Box node. |
PrimitiveNode |
circleNode
Defines a Circle node. |
PrimitiveNode |
closedPolygonNode
Defines a Closed-Polygon node. |
PrimitiveNode |
crossedBoxNode
Defines a Crossed-Box node. |
ArcProto |
dashedArc
Defines a Dashed arc. |
Layer |
defaultLayer
the layer |
ArcProto |
dottedArc
Defines a Dotted arc. |
PrimitiveNode |
filledBoxNode
Defines a Filled-Box node. |
PrimitiveNode |
filledCircleNode
Defines a Filled-Circle node. |
PrimitiveNode |
filledPolygonNode
Defines a Filled-Polygon node. |
PrimitiveNode |
filledTriangleNode
Defines a Filled-Triangle node. |
PrimitiveNode |
openedDashedPolygonNode
Defines a Opened-Dashed-Polygon node. |
PrimitiveNode |
openedDottedPolygonNode
Defines a Opened-Dotted-Polygon node. |
PrimitiveNode |
openedPolygonNode
Defines a Opened-Polygon node. |
PrimitiveNode |
openedThickerPolygonNode
Defines a Opened-Thicker-Polygon node. |
PrimitiveNode |
pinNode
Defines a Pin node. |
ArcProto |
solidArc
Defines a Solid arc. |
PrimitiveNode |
splineNode
Defines a Spline node. |
PrimitiveNode |
thickCircleNode
Defines a Thick-Circle node. |
ArcProto |
thickerArc
Defines a Thick arc. |
PrimitiveNode |
triangleNode
Defines a Triangle node. |
Fields inherited from class com.sun.electric.technology.Technology |
---|
cachedRules, DISK_VERSION_1, DISK_VERSION_2, EMPTY_CONTEXT, EMPTY_LIST, factoryNodeGroups, foundries, LAYERS_BY_HEIGHT, LAYERS_BY_HEIGHT_LIFT_CONTACTS, LAYERS_BY_ZVALUE, N_TYPE, nodeGroups, NULL_ARRAY, oldArcNames, oldNodeNames, P_TYPE, SPECIALMENUCELL, SPECIALMENUEXPORT, SPECIALMENUHIGH, SPECIALMENUMISC, SPECIALMENUPORT, SPECIALMENUPURE, SPECIALMENUSPICE, SPECIALMENUTEXT, sysArtwork, sysFPGA, sysGeneric, sysSchematics, TECH_TMPVAR, TRANS_CONTACT, xmlTech |
Constructor Summary | |
---|---|
Artwork(Generic generic)
|
Method Summary | |
---|---|
static java.awt.geom.Point2D[] |
fillEllipse(java.awt.geom.Point2D center,
double sX,
double sY,
double startoffset,
double endangle)
Method to return an array of Point2D that describe an ellipse. |
java.awt.geom.Point2D[] |
fillSpline(double cX,
double cY,
java.awt.geom.Point2D[] tracePoints)
Method to convert the given spline control points into a spline curve. |
java.lang.Object[][] |
getDefaultNodesGrouped()
Method to construct a default group of elements for the palette. |
java.lang.Object[][] |
getNodesGrouped(Cell curCell)
Method to compute the component menu entries automatically. |
protected void |
getShapeOfArc(AbstractShapeBuilder b,
ImmutableArcInst a)
Fill the polygons that describe arc "a". |
protected Poly[] |
getShapeOfNode(NodeInst ni,
boolean electrical,
boolean reasonable,
Technology.NodeLayer[] primLayers,
Layer layerOverride)
Method to return a list of Polys that describe a given NodeInst. |
Poly |
getShapeOfPort(NodeInst ni,
PrimitivePort pp,
java.awt.geom.Point2D selectPt)
Returns a polygon that describes a particular port on a NodeInst. |
static boolean |
isArtworkArc(ArcProto p)
Method to determ if ArcProto is an Artwork primitive arc |
boolean |
isEasyShape(ImmutableArcInst a,
boolean explain)
Tells if arc can be drawn by simplified algorithm Arcs with user-specified color or pattern are not easy |
static boolean |
isFilledArrowHeads()
Method to tell whether arrow heads are filled-in. |
static EGraphics |
makeGraphics(ElectricObject eObj)
Method to create an EGraphics for an ElectricObject with color and pattern Variables. |
void |
setDefaultOutline(NodeInst ni)
Method to set default outline information on a NodeInst. |
static void |
setFilledArrowHeads(boolean f)
Method to set whether arrow heads are filled-in. |
static Artwork |
tech()
the Artwork Technology object. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final Variable.Key ART_DEGREES
public static final Variable.Key ART_MESSAGE
public static final Variable.Key ART_COLOR
public static final Variable.Key ART_PATTERN
public final PrimitiveNode pinNode
public final PrimitiveNode boxNode
public final PrimitiveNode crossedBoxNode
public final PrimitiveNode filledBoxNode
public final PrimitiveNode circleNode
public final PrimitiveNode filledCircleNode
public final PrimitiveNode splineNode
public final PrimitiveNode triangleNode
public final PrimitiveNode filledTriangleNode
public final PrimitiveNode arrowNode
public final PrimitiveNode openedPolygonNode
public final PrimitiveNode openedDottedPolygonNode
public final PrimitiveNode openedDashedPolygonNode
public final PrimitiveNode openedThickerPolygonNode
public final PrimitiveNode closedPolygonNode
public final PrimitiveNode filledPolygonNode
public final PrimitiveNode thickCircleNode
public final ArcProto solidArc
public final ArcProto dottedArc
public final ArcProto dashedArc
public final ArcProto thickerArc
public final Layer defaultLayer
Constructor Detail |
---|
public Artwork(Generic generic)
Method Detail |
---|
public static Artwork tech()
public java.lang.Object[][] getNodesGrouped(Cell curCell)
getNodesGrouped
in class Technology
curCell
- the current cell being displayed (may affect the palette).
public java.lang.Object[][] getDefaultNodesGrouped()
getDefaultNodesGrouped
in class Technology
protected Poly[] getShapeOfNode(NodeInst ni, boolean electrical, boolean reasonable, Technology.NodeLayer[] primLayers, Layer layerOverride)
getShapeOfNode
in class Technology
ni
- the NodeInst to describe.electrical
- true to get the "electrical" layers.
This makes no sense for Artwork primitives.reasonable
- true to get only a minimal set of contact cuts in large contacts.
This makes no sense for Artwork primitives.primLayers
- an array of NodeLayer objects to convert to Poly objects.layerOverride
- the layer to use for all generated polygons (if not null).
public Poly getShapeOfPort(NodeInst ni, PrimitivePort pp, java.awt.geom.Point2D selectPt)
getShapeOfPort
in class Technology
ni
- the NodeInst that has the port of interest.
The prototype of this NodeInst must be a PrimitiveNode and not a Cell.pp
- the PrimitivePort on that NodeInst that is being described.selectPt
- if not null, it requests a new location on the port,
away from existing arcs, and close to this point.
This is useful for "area" ports such as the left side of AND and OR gates.
protected void getShapeOfArc(AbstractShapeBuilder b, ImmutableArcInst a)
getShapeOfArc
in class Technology
b
- AbstractShapeBuilder to fill polygons.a
- the ImmutableArcInst that is being described.public boolean isEasyShape(ImmutableArcInst a, boolean explain)
isEasyShape
in class Technology
a
- arc to testexplain
- if true then print explanation why arc is not easy
public static java.awt.geom.Point2D[] fillEllipse(java.awt.geom.Point2D center, double sX, double sY, double startoffset, double endangle)
center
- the center coordinate of the ellipse.sX
- the X size of the ellipse.sY
- the Y size of the ellipse.startoffset
- the starting angle of the ellipse, in radians.endangle
- the ending angle of the ellipse, in radians.
If both startoffset and endangle are zero, draw the full ellipse.
public void setDefaultOutline(NodeInst ni)
setDefaultOutline
in class Technology
ni
- the NodeInst to load with default outline information.public java.awt.geom.Point2D[] fillSpline(double cX, double cY, java.awt.geom.Point2D[] tracePoints)
cX
- the center X coordinate of the spline.cY
- the center Y coordinate of the spline.tracePoints
- the array of control point values, alternating X/Y/X/Y.
public static EGraphics makeGraphics(ElectricObject eObj)
eObj
- the ElectricObject with graphics specifications.
public static boolean isArtworkArc(ArcProto p)
p
- ArcProto reference
public static boolean isFilledArrowHeads()
public static void setFilledArrowHeads(boolean f)
f
- true if arrow heads are filled-in.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |