CADability dotNET

The IGeoObject type exposes the following members.

Methods

  NameDescription
Public methodAttributeChanged
This method is called to notify the object of an attribute that changed some of its properties. The objects returns true, if it needs to be repainted.
Public methodChild
Returns the child with the given index. See HasChildren()()()().
Public methodClone
Clones this GeoObject.
Public methodCopyAttributes
Copies the attributes from the given GeoObject to this GeoObject. The geometry remains unchanged.
Public methodCopyGeometry
Copies the geometrical aspects of the given GeoObject to this GeoObject. Both objects must be of the same type. The attributes are not copied.
Public methodDecompose
Public methodFindSnapPoint
Asks the object to enumerate all its possible snap points according to the required modes defined by the parameter.
Public methodGet2DRepresentation
Returns a list of I2DRepresentation objects, that represent this Geoobject in 2d according to the given projection. The returned objects will be used for display and pick purposes.
Public methodGetAttributeProperties
Gets a list of IShowProperty objects that represent the non geometric properties of this geoobject. This list will be used during construct actions (e.g. when interactively drawing that object) to display properties like color or layer.
Public methodGetBoundingCube
Returns a bounding cube of the object. The object must fir into this cube. There may be a smaller cube that contains the object if it is to expensiv to calculate the exact cube.
Public methodGetExtent
Public methodGetNamedAttribute
Gets an attribut from the GeoObject. There are the following types (keys) of attributes predefined in CADability, which can be set with this method: "Layer": sets a Layer "ColorDef": sets a ColorDef "LineWidth": sets a LineWidth "LinePattern": sets a LinePattern "HatchStyle": sets a HatchStyle "DimensionStyle": sets a DimensionStyle "Style": sets a Style Other attributes may be provided by the user.
Public methodGetQuadTreeItem
Public methodGetShowProperties
Gets a IShowProperty object that represents the properties of this geoobject. The result will be used to display the properties in the control center.
Public methodHasChildren
Determins whether this GeoObject has child objects. E.g. Block objects have children. This is necessary when the child objects have different Layers
Public methodHasValidData
Determins whether the GeoObject has valid data (e.g. to be added to a model). E.g. a line where the startpoint is identical to the endpoint or a circle with radius <=0.0 is considered invalid.
Public methodIsAttributeUsed
Returns true if this object uses the attribute in the parameter. Attributes may be CADability objects like Layer etc. or any user defined objects.
Public methodModify
Modifies this GeoObject with the given modification operation (includes moving, rotating, reflecting, scaling etc.).
Public methodModifyWithMouse
Notifies about the begin and end of a modification with the mouse
Public methodPaintTo3D
Paint the object to the 3D display machine and returns a (possibly cached) displaylist
Public methodPaintTo3DList
Public methodPrePaintTo3D
Called before PaintTo3D, not collected in the DisplayList
Public methodPrepareDisplayList
This method will be called from a background thread when a higher precision displaylist is needed. The object should do all the necessary calculation to produce a display list with the required precision. The display list will later be acquired by a call to PaintTo3DList (or PaintTo3D) from the main thred because the display dirvers are not multithread enabled.
Public methodPropagateAttributes
Propagates the layer and color from the owner (usually a BlockRef) to this object.
Public methodSetNamedAttribute
Sets an attribut to the GeoObject. There are the following types (keys) of attributes predefined in CADability, which can be set with this method: "Layer": sets a Layer "ColorDef": sets a ColorDef "LineWidth": sets a LineWidth "LinePattern": sets a LinePattern "HatchStyle": sets a HatchStyle "DimensionStyle": sets a DimensionStyle "Style": sets a Style Other attributes may be provided by the user.
Public methodUpdateAttributes(IAttributeListContainer)
When an IGeoObject changes the context that contains the lists of attributes it must replace its attributes by those given in the new context. If there are no appropriate attributes in the new context, these attributes must be included int this new context. This happens when drag and drop operations are executed or when a model is copied from one project to another project. IGeoObjectImpl contains a complete implementation regarding the attributes Style, Layer, ColorDef, LineWidth, LinePattern, HatchStyle and DimensionStyle
Public methodUpdateAttributes(array<I2DRepresentation>[]()[][], Projection, GDIResources)
DEPRECATED not used any more!

Properties

  NameDescription
Public propertyActuator
Gets or sets an actuator or drive that defines the mechanical constraint or degree of freedom for this object Used for animation, static objects dont have an actuator (null)
Public propertyAttributes
Gets all attributes that this GeoObject posesses.
Public propertyCustomAttributeKeys
Gets all custom attributes attached to this object
Public propertyDescription
Returns a description of the GeoObject which is used in the control center
Public propertyIsVisible
Public propertyNumChildren
Returns the number of children the GeoObject has. Simple GeoObjects (like Line) dont have children.
Public propertyOwnedItems
Public propertyOwner
Returns the owner of this GeoObject. Each GeoObject has only one owner. This might be a Model or a GeoObject derived from Block.
Public propertyPreferredStyle
Public propertyUniqueId
Public propertyUserData
Gets the user data collection for this GeoObject. This is the way to connect your own objects with a GeoObject. See UserData.

Events

  NameDescription
Public eventDidChangeEvent
Event that must be provided by each GeoObject. This event will be fired when the GeoObject did change (either geometrical aspects or attributes).
Public eventWillChangeEvent
Event that must be provided by each GeoObject. This event will be fired when the GeoObject is about to change (either geometrical aspects or attributes).

See Also