Class ConstHelixSideContour
- Namespace
- Hi.Milling.FluteContours
- Assembly
- HiMech.dll
Represents a constant helix side contour for milling cutters.
public class ConstHelixSideContour : ISideContour, IWorkingContour, IExpandToBox3d, IMakeXmlSource, IUpdateByContent, IClearCache, IEquatable<ConstHelixSideContour>
- Inheritance
-
ConstHelixSideContour
- Implements
- Inherited Members
- Extension Methods
Constructors
ConstHelixSideContour(IGetZrList)
Initializes a new instance of the ConstHelixSideContour class.
public ConstHelixSideContour(IGetZrList zrListHost)
Parameters
zrListHost
IGetZrListThe Z-R list host.
ConstHelixSideContour(double, double, IGetZrList)
Initializes a new instance of the ConstHelixSideContour class.
public ConstHelixSideContour(double helix_rad, double radialRakeAngle_rad, IGetZrList zrListHost)
Parameters
helix_rad
doubleThe helix angle in radians.
radialRakeAngle_rad
doubleThe radial rake angle in radians.
zrListHost
IGetZrListThe Z-R list host.
ConstHelixSideContour(XElement, string, IGetZrList)
Initializes a new instance of the ConstHelixSideContour class from XML.
public ConstHelixSideContour(XElement src, string baseDirectory, IGetZrList zrListHost)
Parameters
src
XElementThe XML element containing the configuration.
baseDirectory
stringThe base directory for resolving relative paths.
zrListHost
IGetZrListThe Z-R list host.
Properties
Helix_deg
Helix_rad in degree.
public double Helix_deg { get; set; }
Property Value
Helix_rad
Helix angle in radian.
public double Helix_rad { get; set; }
Property Value
KeyRange
Gets the key range of the flute contour.
public Range<double> KeyRange { get; }
Property Value
Remarks
- For ISideContour, this represents the Z-value range (height range)
- For IBottomContour, this represents the R-value range (radial range)
RadialRakeAngle_deg
Gets or sets the radial rake angle in degrees.
public double RadialRakeAngle_deg { get; set; }
Property Value
RadialRakeAngle_rad
Gets or sets the radial rake angle in radians.
public double RadialRakeAngle_rad { get; set; }
Property Value
RadialReliefAngle_deg
Gets or sets the radial relief angle in degrees.
public double RadialReliefAngle_deg { get; set; }
Property Value
RadialReliefAngle_rad
Gets or sets the radial relief angle in radians.
public double RadialReliefAngle_rad { get; set; }
Property Value
XName
Name for XML IO.
public static string XName { get; }
Property Value
ZrListHost
Gets or sets the Z-R list host.
public IGetZrList ZrListHost { get; set; }
Property Value
Methods
ClearCache()
Clears the cached data.
public void ClearCache()
Duplicate(IGetZrList)
Creates a duplicate of this contour with a new Z-R list host.
public IWorkingContour Duplicate(IGetZrList zrListHost)
Parameters
zrListHost
IGetZrListThe new Z-R list host.
Returns
- IWorkingContour
A duplicate of this contour.
Equals(ConstHelixSideContour)
Indicates whether the current object is equal to another object of the same type.
public bool Equals(ConstHelixSideContour other)
Parameters
other
ConstHelixSideContourAn object to compare with this object.
Returns
Equals(object)
Determines whether the specified object is equal to the current object.
public override bool Equals(object obj)
Parameters
obj
objectThe object to compare with the current object.
Returns
ExpandToBox3d(Box3d)
Expands the destination box. This function is usually used to compute the bounding box of elements.
public void ExpandToBox3d(Box3d dst)
Parameters
dst
Box3dDestination box
GetHashCode()
Serves as the default hash function.
public override int GetHashCode()
Returns
- int
A hash code for the current object.
GetSpanContourPosList()
Gets a list of span contour positions that define the working contour geometry.
public List<SpanContourPos4d> GetSpanContourPosList()
Returns
- List<SpanContourPos4d>
A list of SpanContourPos4d objects representing the contour geometry
Remarks
The positions are ordered:
- For ISideContour, positions are ordered by ascending Z values
- For IBottomContour, positions are ordered by ascending R values
Note: Future implementation may use List<List<SpanContourPos4d>> for block flute support.
MakeXmlSource(string, string)
Creates an XML representation of the object. This method may also generate additional resources such as related files.
public XElement MakeXmlSource(string baseDirectory, string relFile)
Parameters
baseDirectory
stringThe base directory for resolving relative paths
relFile
stringThe relative file path for the XML source
Returns
- XElement
An XML element representing the object's state
UpdateByContent()
Updates the object based on its current content.
public void UpdateByContent()