public class VectorCache
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
VectorCache.VectorBase
Class which defines the common information for all cached displayable objects
|
Modifier and Type | Field and Description |
---|---|
EDatabase |
database
database to work.
|
static boolean |
DEBUG |
static java.util.Comparator<VectorCache.VectorBase> |
shapeByLayer
Comparator class for sorting VectorBase objects by their layer depth.
|
static VectorCache |
theCache |
Constructor and Description |
---|
VectorCache(EDatabase database)
Creates a new instance of VectorCache
|
Modifier and Type | Method and Description |
---|---|
void |
addBoxToCell(ImmutableElectricObject origin,
double lX,
double lY,
double hX,
double hY,
Layer layer,
CellId cellId)
Method to insert a Manhattan rectangle into the vector cache for a Cell.
|
void |
addInstanceToCell(ImmutableElectricObject origin,
double lX,
double lY,
double hX,
double hY,
CellId cellId)
Method to insert a Manhattan rectangle into the vector cache for a Cell.
|
void |
clearCache()
Method called when it is necessary to clear cache.
|
void |
clearFadeImages()
Method called when visible layers have changed.
|
com.sun.electric.tool.user.redisplay.VectorCache.VectorCell |
drawCell(CellId cellId,
Orientation prevTrans,
VarContext context,
double scale,
boolean makeTopLevel) |
static VectorCache.VectorBase[] |
drawNode(NodeInst ni) |
static VectorCache.VectorBase[] |
drawPolys(ImmutableArcInst a,
Poly[] polys) |
com.sun.electric.tool.user.redisplay.VectorCache.VectorCell |
findVectorCell(CellId cellId,
Orientation orient) |
void |
forceRedraw() |
static Cell |
getCellFromId(CellId cellId)
Method to find the Cell from a CellId.
|
java.util.Set<CellId> |
updateChange(java.util.Set<CellId> topCells,
SnapshotAnalyze sa)
Method to update the VectorCache when a change is made.
|
public static final boolean DEBUG
public static final VectorCache theCache
public final EDatabase database
public static java.util.Comparator<VectorCache.VectorBase> shapeByLayer
public VectorCache(EDatabase database)
public com.sun.electric.tool.user.redisplay.VectorCache.VectorCell findVectorCell(CellId cellId, Orientation orient)
public static Cell getCellFromId(CellId cellId)
cellId
- the CellId to find.public com.sun.electric.tool.user.redisplay.VectorCache.VectorCell drawCell(CellId cellId, Orientation prevTrans, VarContext context, double scale, boolean makeTopLevel)
public static VectorCache.VectorBase[] drawNode(NodeInst ni)
public static VectorCache.VectorBase[] drawPolys(ImmutableArcInst a, Poly[] polys)
public void addBoxToCell(ImmutableElectricObject origin, double lX, double lY, double hX, double hY, Layer layer, CellId cellId)
lX
- the low X of the Manhattan rectangle.lY
- the low Y of the Manhattan rectangle.hX
- the high X of the Manhattan rectangle.hY
- the high Y of the Manhattan rectangle.layer
- the layer on which to draw the rectangle.cellId
- the Cell in which to insert the rectangle.public void addInstanceToCell(ImmutableElectricObject origin, double lX, double lY, double hX, double hY, CellId cellId)
lX
- the low X of the Manhattan rectangle.lY
- the low Y of the Manhattan rectangle.hX
- the high X of the Manhattan rectangle.hY
- the high Y of the Manhattan rectangle.cellId
- the Cell in which to insert the rectangle.public java.util.Set<CellId> updateChange(java.util.Set<CellId> topCells, SnapshotAnalyze sa)
topCells
- all cells visible in any window.sa
- the change that was made.public void forceRedraw()
public void clearCache()
public void clearFadeImages()