Class UnscaledGeoObject
A IGeoObject which always appears in the same size in a view. It is not scaled when the view is zoomed.
These objects can not be kept in displaylists and hence have a poor performance when used in high numbers.
The objects rotate with the view when viewed from different directions.
The Location specifies the position of the origin (GeoPoint(0,0,0)) of the referenced GeoObject.
Usually you would center the referenced object at the origin so this object will be centered at the Location.
In contrast to the Icon object, which always shows its face to the viewer and is much faster,
because it can be kept in the display list.
Since this object does not have a well defined size in world coordinates, it is only pickable or selectable
at its insertion point. The size of the object is assumed in device units (pixels)
The Layer of this object will be taken into account for the objects visibility, not the layer of the
referenced object.
The use of this object is not recommended because it has a poor performance in both display and selection.
Consider using Icon instead.
Inheritance
System.Object
UnscaledGeoObject
Implements
System.IComparable
System.ICloneable
System.Runtime.Serialization.ISerializable
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Assembly: CADability.dll
Syntax
[Serializable]
public class UnscaledGeoObject : IGeoObjectImpl, IGeoObject, ILayer, IStyle, IOctTreeInsertable, IComparable, IFeedBack, ICloneable, ISerializable
Constructors
|
Improve this Doc
View Source
UnscaledGeoObject(SerializationInfo, StreamingContext)
Declaration
protected UnscaledGeoObject(SerializationInfo info, StreamingContext context)
Parameters
| Type |
Name |
Description |
| System.Runtime.Serialization.SerializationInfo |
info |
|
| System.Runtime.Serialization.StreamingContext |
context |
|
Fields
|
Improve this Doc
View Source
Constructor
Provide a delegate here if you want you UnscaledGeoObject derived class to be
created each time CADability creates a UnscaledGeoObject.
Declaration
public static UnscaledGeoObject.ConstructionDelegate Constructor
Field Value
Properties
|
Improve this Doc
View Source
GeoObject
The GeoObject to be displayed. This can be any kind of GeoObject, Text and Bitmap are often used.
The object must be in a coordinate space where the Origin will be transferred to the Location.
Declaration
public IGeoObject GeoObject { get; set; }
Property Value
|
Improve this Doc
View Source
Location
The world coordinates location of this object
Declaration
public GeoPoint Location { get; set; }
Property Value
Methods
|
Improve this Doc
View Source
Clone()
Overrides Clone(). Must be implemented by each GeoObject. No default implementation.
Declaration
public override IGeoObject Clone()
Returns
Overrides
|
Improve this Doc
View Source
Construct()
The only way to create a UnscaledGeoObject. There are no public constructors for the UnscaledGeoObject to assure
that this is the only way to construct a UnscaledGeoObject.
Declaration
public static UnscaledGeoObject Construct()
Returns
|
Improve this Doc
View Source
CopyGeometry(IGeoObject)
Declaration
public override void CopyGeometry(IGeoObject ToCopyFrom)
Parameters
Overrides
|
Improve this Doc
View Source
GetBoundingCube()
Declaration
public override BoundingCube GetBoundingCube()
Returns
Overrides
|
Improve this Doc
View Source
GetExtent(Projection, ExtentPrecision)
Declaration
public override BoundingRect GetExtent(Projection projection, ExtentPrecision extentPrecision)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
GetExtent(Double)
Declaration
public override BoundingCube GetExtent(double precision)
Parameters
| Type |
Name |
Description |
| System.Double |
precision |
|
Returns
Overrides
|
Improve this Doc
View Source
GetQuadTreeItem(Projection, ExtentPrecision)
Declaration
public override IQuadTreeInsertableZ GetQuadTreeItem(Projection projection, ExtentPrecision extentPrecision)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
GetShowProperties(IFrame)
Should be overridden and return a IShowProperty derived object
that handles the display and modification of the properties of the IGeoObject derived object.
Default implementation return null.
Declaration
public override IShowProperty GetShowProperties(IFrame Frame)
Parameters
| Type |
Name |
Description |
| IFrame |
Frame |
|
Returns
Overrides
|
Improve this Doc
View Source
HitTest(ref BoundingCube, Double)
Declaration
public override bool HitTest(ref BoundingCube cube, double precision)
Parameters
| Type |
Name |
Description |
| BoundingCube |
cube |
|
| System.Double |
precision |
|
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
|
Improve this Doc
View Source
HitTest(Projection, BoundingRect, Boolean)
Declaration
public override bool HitTest(Projection projection, BoundingRect rect, bool onlyInside)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
|
Improve this Doc
View Source
HitTest(Projection.PickArea, Boolean)
Declaration
public override bool HitTest(Projection.PickArea area, bool onlyInside)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
|
Improve this Doc
View Source
Modify(ModOp)
Overrides Modify(ModOp). Must be implemented by each GeoObject.
No default implementation.
Declaration
public override void Modify(ModOp m)
Parameters
| Type |
Name |
Description |
| ModOp |
m |
the modification
|
Overrides
|
Improve this Doc
View Source
PaintTo3D(IPaintTo3D)
Declaration
public override void PaintTo3D(IPaintTo3D paintTo3D)
Parameters
Overrides
|
Improve this Doc
View Source
PaintTo3DList(IPaintTo3D, ICategorizedDislayLists)
Declaration
public override void PaintTo3DList(IPaintTo3D paintTo3D, ICategorizedDislayLists lists)
Parameters
Overrides
|
Improve this Doc
View Source
Position(GeoPoint, GeoVector, Double)
Declaration
public override double Position(GeoPoint fromHere, GeoVector direction, double precision)
Parameters
Returns
| Type |
Description |
| System.Double |
|
Overrides
|
Improve this Doc
View Source
PrePaintTo3D(IPaintTo3D)
Declaration
public override void PrePaintTo3D(IPaintTo3D paintTo3D)
Parameters
Overrides
|
Improve this Doc
View Source
PrepareDisplayList(Double)
Declaration
public override void PrepareDisplayList(double precision)
Parameters
| Type |
Name |
Description |
| System.Double |
precision |
|
Overrides
|
Improve this Doc
View Source
RealHitTest(Projection.PickArea, Boolean)
Declaration
public bool RealHitTest(Projection.PickArea area, bool onlyInside)
Parameters
| Type |
Name |
Description |
| Projection.PickArea |
area |
Pick area to check
|
| System.Boolean |
onlyInside |
true, if the whole object must reside inside the pickarea, false if overlapping will suffice
|
Returns
| Type |
Description |
| System.Boolean |
true when a hit is recognized
|
Events
|
Improve this Doc
View Source
Constructed
Declaration
public static event UnscaledGeoObject.ConstructedDelegate Constructed
Event Type
Explicit Interface Implementations
|
Improve this Doc
View Source
ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Implements ISerializable.GetObjectData. Saves UserData, and .
All other properties of the GeoObject must be saved by the derived class. don't forget
to call the base implementation
Declaration
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
Parameters
| Type |
Name |
Description |
| System.Runtime.Serialization.SerializationInfo |
info |
info
|
| System.Runtime.Serialization.StreamingContext |
context |
context
|
Implements
System.IComparable
System.ICloneable
System.Runtime.Serialization.ISerializable