All Frameworks Class Hierarchy This Framework Previous Next Indexes
GeometricObjects Interface CATCone
System.IUnknown
|
+---System.IDispatch
|
+---System.CATBaseUnknown
|
+---GeometricObjects.CATICGMUnknown
|
+---GeometricObjects.CATICGMObject
|
+---GeometricObjects.CATGeometry
|
+---GeometricObjects.CATSurface
|
+---GeometricObjects.CATElementarySurface
|
+---CATCone
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATCone
Interface representing a geometric cone.
The CATCone is created by the CreateCone
method of the CATGeoFactory interface and deleted with the Remove method.
It is defined with:
CATMathAxis | Axis |
The (O,X,Y,Z) axes system, whose third Z direction is the cone direction |
double | StartRadius |
The circle radius on the plane (O,X,Y) |
CATAngle | ConeAngle |
The external angle between the cone and the (O,X,Z) plane
intersection, and the (O,X,Y) plane |
CATAngle | StartAngle |
The low limitation of the circle arc, measured from
the axis first direction.
|
CATAngle | EndAngle |
The high limitation of the circle arc, measured from
the axis first direction.
|
double | StartRuleLength |
The low limitation of the cone length,
measured on the third direction.
|
double | EndRuleLength |
The high limitation of the cone length,
measured on the third direction.
|
Notice that 0 < ConeAngle < Pi/2
and StartRuleLength < EndRuleLength , 0 <= StartAngle < 2*Pi,
StartAngle < EndAngle <= 2*Pi.
StartRuleLength
and EndRuleLength
may be negative if they do not exceed the Z abscissa of the cone apex.
The CATCone is parameterized by the arc length (first direction U) of the
mean circular section and the chord length (second direction V) along a
ruling.
C(U,V) = Origin +
(StartRadius + L * cos(ConeAngle))*(cos(theta)*OX + sin(theta)*OY)
+ L * sin(ConeAngle) * OZ
where U = UScale * theta and L is the rule-length, L = LenScale*V.
Method Index
- o
GetApex(CATMathPoint&)
- Returns the apex of this CATCone.
- o
GetConeAngle()
- Returns the angle of this CATCone.
- o
GetEndAngle()
- Returns the high limitation of the circle arc of this CATCone.
- o
GetEndRuleLength()
- Returns the high limitation of the length of this CATCone.
- o
GetRadiusAtV(double)
- Returns the radius of the circular cross-section of this cone
at the input V-value.
- o
GetSemiAngle()
- Returns the angle between this cone and its axis third direction.
- o
GetStartAngle()
- Returns the low limitation of the circle arc of this CATCone.
- o
GetStartRadius()
- Returns the radius in the definition plane of this CATCone.
- o
GetStartRuleLength()
- Returns the low limitation of the length of this CATCone.
- o
GetUScale()
- Retrieves the scale on the circular direction of this CATCone.
- o
GetVScale()
- Retrieves the scale along the rule-lines of this CATCone.
- o
GetVShift()
- Retrieves the shift along the rule-lines of this CATCone.
- o
SetUScale(double)
- Modifies the scale on the circular direction of this CATCone.
- o
SetVScale(double)
- Modifies the scale along the rule-lines of this CATCone.
- o
SetVShift(double)
- Modifies the shift along the rule-lines of this CATCone.
Methods
o GetApex
-
Returns the apex of this CATCone.
- Parameters:
-
- ioPoint
- The mathematical definition of the apex.
o GetConeAngle
public virtual CATAngle GetConeAngle( | )const = 0 |
-
Returns the angle of this CATCone.
- Returns:
- The external angle between the cone and the (O,X,Z) plane
intersection, and the (O,X,Y) plane
o GetEndAngle
public virtual CATAngle GetEndAngle( | )const = 0 |
-
Returns the high limitation of the circle arc of this CATCone.
- Returns:
- The high limitation of the circle arc.
o GetEndRuleLength
public virtual double GetEndRuleLength( | )const = 0 |
-
Returns the high limitation of the length of this CATCone.
- Returns:
- The low limitation of the length, It is measured on the third direction of the CATCone axis.
o GetRadiusAtV
public virtual double GetRadiusAtV( | const double | iVval) const=0 |
-
Returns the radius of the circular cross-section of this cone
at the input V-value.
- Parameters:
-
- iVval
- The parameter value in the V direction.
- Returns:
- The corresponding radius value.
o GetSemiAngle
public virtual CATAngle GetSemiAngle( | )const = 0 |
-
Returns the angle between this cone and its axis third direction.
- Returns:
- The angle value.
o GetStartAngle
public virtual CATAngle GetStartAngle( | )const = 0 |
-
Returns the low limitation of the circle arc of this CATCone.
- Returns:
- The low limitation of the circle arc.
o GetStartRadius
public virtual double GetStartRadius( | )const = 0 |
-
Returns the radius in the definition plane of this CATCone.
- Returns:
- The circle radius on the plane (O,X,Y).
o GetStartRuleLength
public virtual double GetStartRuleLength( | )const = 0 |
-
Returns the low limitation of the length of this CATCone.
- Returns:
- The low limitation of the length, measured on the third direction of the CATCone axis.
o GetUScale
public virtual double GetUScale( | )const = 0 |
-
Retrieves the scale on the circular direction of this CATCone.
- Returns:
- The scale: U = UScale * theta, in which theta is the angle measured
on the MeanCircularSection, with theta(OX)=0 and theta(OY)=Pi/2.
o GetVScale
public virtual double GetVScale( | )const = 0 |
-
Retrieves the scale along the rule-lines of this CATCone.
- Returns:
- The scale. This starts as 1.0, so that V measures rule-length. However,
to preserve parametrization under dilations, it may be changed.
o GetVShift
public virtual double GetVShift( | )const = 0 |
-
Retrieves the shift along the rule-lines of this CATCone.
- Returns:
- The shift. This starts as 0.0, so that V measures rule-length from the
ex-ey plane of the CATMathAxis. However,
to preserve parametrization under offsets, it may be changed.
In particular, positive offsets can be handled without the shift,
but a large enough negative offset requires a shift in V in order
to avoid a negative StartRadius.
o SetUScale
public virtual void SetUScale( | const double | iNewUScale) = 0 |
-
Modifies the scale on the circular direction of this CATCone.
- Parameters:
-
- iNewUScale
- The scale.
o SetVScale
public virtual void SetVScale( | const double | iNewVScale) = 0 |
-
Modifies the scale along the rule-lines of this CATCone.
- Parameters:
-
- iNewVScale
- The new scale.
o SetVShift
public virtual void SetVShift( | const double | iNewVScale) = 0 |
-
Modifies the shift along the rule-lines of this CATCone.
- Parameters:
-
- iNewVScale
- The new shift.
This object is included in the file: CATCone.h
If needed, your Imakefile.mk should include the module: CATGeometricObjects