A Shape is a GraphObject that shows a geometric figure. The Geometry determines what is drawn; the properties #fill and #stroke (and other stroke properties) determine how it is drawn.
A newly constructed Shape has a default #figure of "None", which constructs a rectangular geometry, and is filled and stroked with a black brush.
Gets or sets the function to execute when the ActionTool is cancelled and this GraphObject's #isActionable is set to true.
Gets or sets the function to execute on a mouse-down event when this GraphObject's #isActionable is set to true.
Gets or sets the function to execute on a mouse-move event when this GraphObject's #isActionable is set to true.
Gets or sets the function to execute on a mouse-up event when this GraphObject's #isActionable is set to true.
Gets the bounds of this GraphObject in container coordinates.
Gets or sets the alignment Spot of this GraphObject used in Panel layouts, to determine where in the area allocated by the panel this object should be placed.
Gets or sets the spot on this GraphObject to be used as the alignment point in Spot and Fixed Panels.
Gets or sets the angle transform, in degrees, of this GraphObject.
Gets or sets the areaBackground Brush (or CSS color string) of this GraphObject.
Gets or sets the background Brush (or CSS color string) of this GraphObject, filling the rectangle of this object's local coordinate space.
Gets or sets the function to execute when the user single-primary-clicks on this object.
Gets or sets the column of this GraphObject if it is in a Table Panel.
Gets or sets the number of columns spanned by this GraphObject if it is in a Table Panel.
Gets or sets the function to execute when the user single-secondary-clicks on this object.
This Adornment is shown upon a context click on this object.
Gets or sets the mouse cursor to use when the mouse is over this object with no mouse buttons pressed.
Gets or sets the desired size of this GraphObject in local coordinates.
Gets the Diagram that this GraphObject is in, if it is.
Gets or sets the function to execute when the user double-primary-clicks on this object.
Gets or sets the figure name, used to construct a Geometry.
Gets or sets the Brush (or CSS color string) that describes the fill of the Shape.
Gets or sets the name of the kind of arrowhead that this shape should take when this shape is an element of a Link.
Gets or sets how the direction of the last segment of a link coming from this port is computed when the node is rotated.
Gets or sets the length of the last segment of a link coming from this port.
Gets or sets whether the user may draw Links from this port.
Gets or sets whether the user may draw duplicate Links from this port.
Gets or sets whether the user may draw Links that connect from this port's Node.
Gets or sets the maximum number of links that may come out of this port.
Gets or sets how far the end segment of a link coming from this port stops short of the actual port.
Gets or sets where a link should connect from this port.
Gets or sets the Shape's Geometry that defines the Shape's figure.
Gets or sets how the shape's geometry is proportionally created given its computed size.
When set, creates a Geometry and normalizes it from a given path string, then sets the Geometry on this Shape and offsets the GraphObject#position by an appropriate amount.
Gets or sets the desired height of this GraphObject in local coordinates.
Gets or sets how frequently this shape should be drawn within a Grid Panel, in multiples of the Panel#gridCellSize.
This property determines whether or not this GraphObject's events occur before all other events, including selection.
Gets or sets the whether the #position denotes the panel coordinates of the geometry or of the stroked area.
Gets or sets whether a GraphObject is the "main" object for some types of Panel.
Gets the GraphObject's containing Layer, if there is any.
Gets or sets the size of empty area around this GraphObject, as a Margin (or number for a uniform Margin), in the containing Panel coordinates.
Gets or sets the maximum size of this GraphObject in container coordinates (either a Panel or the document).
Gets the measuredBounds of the GraphObject in container coordinates (either a Panel or the document).
Gets or sets the minimum size of this GraphObject in container coordinates (either a Panel or the document).
Gets or sets the function to execute when the user moves the mouse into this stationary object during a DraggingTool drag.
Gets or sets the function to execute when the user moves the mouse out of this stationary object during a DraggingTool drag.
Gets or sets the function to execute when a user drops the selection on this object at the end of a DraggingTool drag.
Gets or sets the function to execute when the user moves the mouse into this object without holding down any buttons.
Gets or sets the function to execute when the user holds the mouse stationary in the background of the diagram while holding down a button over this object.
Gets or sets the function to execute when the user holds the mouse stationary in the background of the diagram without holding down any buttons over this object.
Gets or sets the function to execute when the user moves the mouse into this object without holding down any buttons.
Gets or sets the function to execute when the user moves the mouse over this object without holding down any buttons.
Gets or sets the name for this object.
Gets the natural bounds of this Shape as determined by its #geometry's bounds.
Gets the GraphObject's containing Panel, or null if this object is not in a Panel.
Gets or sets a property for parameterizing the construction of a Geometry from a figure.
Gets or sets a property for parameterizing the construction of a Geometry from a figure.
Gets the Part containing this object, if any.
Gets or sets whether or not this GraphObject can be chosen by visual "find" methods such as Diagram#findObjectAt.
Gets or sets an identifier for an object acting as a port on a Node.
Gets or sets the position of this GraphObject in container coordinates (either a Panel or the document).
Gets or sets the row of this GraphObject if it is in a Table Panel.
Gets or sets the number of rows spanned by this GraphObject if it is in a Table Panel.
Gets or sets the scale transform of this GraphObject.
Gets or sets the fractional distance along a segment of a GraphObject that is in a Link.
Gets or sets the segment index of a GraphObject that is in a Link.
Gets or sets the offset of a GraphObject that is in a Link from a point on a segment.
Gets or sets the orientation of a GraphObject that is in a Link.
Gets or sets the top-left Spot used by some Panels for determining where in the shape other objects may be placed.
Gets or sets the bottom-right Spot used by some Panels for determining where in the shape other objects may be placed.
Gets or sets the stretch of the GraphObject.
Gets or sets the Brush (or CSS color string) that describes the stroke of the Shape.
Gets or sets the style for the stroke's line cap.
Gets or sets the dash array for creating dashed lines.
Gets or sets the offset for dashed lines, used in the phase pattern.
Gets or sets the type of corner that will be drawn when two lines meet.
Gets or sets the style for the stroke's mitre limit ratio.
Gets or sets a stroke's width.
Gets or sets the name of the kind of arrowhead that this shape should take when this shape is an element of a Link.
Gets or sets how the direction of the last segment of a link going to this port is computed when the node is rotated.
Gets or sets the length of the last segment of a link going to this port.
Gets or sets whether the user may draw Links to this port.
Gets or sets whether the user may draw duplicate Links to this port.
Gets or sets whether the user may draw Links that connect to this port's Node.
Gets or sets the maximum number of links that may go into this port.
Gets or sets how far the end segment of a link going to this port stops short of the actual port.
Gets or sets where a link should connect to this port.
This Adornment is shown when the mouse hovers over this object.
Gets or sets whether a GraphObject is visible.
Gets or sets the desired width of this GraphObject in local coordinates.
Add a data-binding of a property on this GraphObject to a property on a data object.
any
Creates a deep copy of this GraphObject and returns it.
Returns the effective angle that the object is drawn at, in document coordinates.
number
Returns the Point in document coordinates for a given Spot in this object's bounds.
a real Spot describing a location relative to the GraphObject.
an optional Point that is modified and returned.
Returns the total scale that the object is drawn at, in document coordinates.
number
Given a Point in document coordinates, returns a new Point in local coordinates.
a Point in document coordinates.
an optional Point that is modified and returned.
This predicate is true if this object is an element, perhaps indirectly, of the given panel.
or if it is contained by another panel that is contained by the given panel, to any depth; false if the argument is null or is not a Panel.
boolean
This predicate is true if this object is #visible and each of its visual containing panels are also visible.
boolean