<< Click to Display Table of Contents >> NShape Reference

A one dimensional shape.
public abstract class LineShapeBase : ShapeBase, ILinearShape 
Description
Base class for most of the linear shapes in the standard libraries and custom libraries.
LinearShapeBase can but need not be used as a base class for custom linear shapes. It provides support for the following areas:
•Line caps management
•Vertex and control point management
Name 
Description 

IsDirected 
Indicates wether one of the line ends has a line cap. 
MaxVertexCount 
Returns the maximum number of vertices for this shape. 
MinVertexCount 
Returns the Minimum number of vertices for this shape. 
VertexCount 
Returns the current number of vertices of this shape. 
Name 
Description 

AddVertex 
Adds a new vertex at the indicated position. 
CalcNormalVector 
Calculates a vector perpendicular to the shape's outline. 
CalculateConnectionFoot 
Calculates the foot of a connection. 
CopyFrom 
Copies as many properties as possible from the source shape. 
GetControlPointIds 
Returns a list of ControlPointIds that fulfill at least one of the requested ControlPointCapabilities. 
GetControlPointPosition 
Returns the position of the indicated control point. 
GetMenuItemDefs 
Retrieves the list of context menu item definitions of the shape. 
GetNextVertexId 
Returns the ControlPointId of the vertex next to the indicated vertex. Direction: ControlPointId.FirstVertex to ControlPointId.LastVertex 
GetPreviousVertexId 
Returns the ControlPointId of the vertex next to the indicated vertex. Direction: ControlPointId.LastVertex to ControlPointId.FirstVertex. 
GetPropertyDefinitions 
Implementation of the IEntity.GetPropertyDefinitions pseudo member. 
HasControlPointCapability 
Tests, whether a control point has at least one of a set of given capabilities. 
InsertVertex 
Inserts a new vertex at the indicated position before the indicated vertex. 
Invalidate 
Invalidates the shape. 
MakePreview 
Transforms the shape into a preview shape. 
NotifyStyleChanged 
Notifies the shape that the given style has changed. 
RemoveVertex 
Removes the indicated vertex. 
Name 
Description 

ControlPointCount 
Returns the number of control points. 
EndCapAngle 
Returns the angle in degrees of the line's end point line cap. 
EndCapBounds 
Returns the Bounds of the line's end point line cap. 
EndCapStyleInternal 
Returns the ICapStyle of the line's end point line cap. 
StartCapAngle 
Returns the angle in degrees of the line's start point line cap. 
StartCapBounds 
Returns the Bounds of the line's start point line cap. 
StartCapStyleInternal 
Returns the ICapStyle of the line's start point line cap. 
pointIds 
List of ControlPointIds for mapping a vertex' index to its ControlPointId. 
shapePoints 
Array of points used for drawing 
vertices 
List of vertices (absolute coordinates) 
Name 
Description 

CalcCapAngle 
Calculates the angle of the a cap in degrees. 
CalculateBoundingRectangle 
Calculates the axis aligned bounding rectangle of the shape and its children. 
Constructor 
Constructs a new shape instance. 
ContainsPointCore 
Base implementation of ContainsPoint testing wether one the line caps contains the given point. 
DrawEndCapBackground 
Fills the background of the line cap. 
DrawStartCapBackground 
Fills the background of the line cap. 
EndCapContainsPoint 
Tests wether the line cap contains the given point. 
EndCapIntersectsWith 
Tests wether the line cap intersects with the given rectangle. 
GetControlPointId 
Returns the ControlPointId for the indicated vertex. 
GetControlPointIndex 
Returns the index of the indicated vertex. 
GluePointNeighbourMoved 
Notifies the shape that a point next to a glue point has moved. If the glue point is connected to a shape's Reference point, the position of the glue point has to be adjusted. 
InitializeToDefault 
Initializes this shape with default values. 
InvalidateDrawCache 
Clears all objects and buffers needed for drawing the shape so that they will be recalculated the next time. 
IsConnectionPointEnabled 
Checks if the given ControlPoint is a mapped ConnectionPoint (if this shape has a model object). 
IsFirstVertex 
Tests wether the indicated control point is the first vertex. 
IsLastVertex 
Tests wether the indicated control point is the last vertex. 
LoadFieldsCore 
Implementation of IEntity.LoadFields. 
LoadInnerObjectsCore 
Implementation of IEntity.LoadInnerObjects. 
MoveByCore 
Implementation of Shape.MoveBy. 
ProcessExecModelPropertyChange 
Implementation of reacting to model property changes 
RecalcDrawCache 
Recalculates all objects and buffers needed to draw this shape. 
RotateCore 
Implementation of Shape.Rotate. 
SaveFieldsCore 
Implementation of IEntity.SaveFields. 
SaveInnerObjectsCore 
Implementation of IEntity.SaveInnerObjects. 
StartCapContainsPoint 
Tests wether the line cap contains the given point. 
StartCapIntersectsWith 
Tests wether the line cap intersects with the given rectangle. 
TransformDrawCache 
Transforms all objects and buffers to the current position and angle. 
UpdateDrawCache 
Checks if any objects and buffers needed to draw the shape are invalid and calls RecalcDrawCache in this case. 
Derived classes are:
Namespace: Dataweb.NShape.Advanced
Assembly: Dataweb.NShape