Table of Contents

Class MillingTool

Namespace
Hi.Milling.MillingTools
Assembly
HiMech.dll

Represents a central stick milling tool that combines a holder and a cutter.

public class MillingTool : IMachiningTool, IDisplayee, IExpandToBox3d, ITopo, IGetAsmb, IGetAnchor, IGetTopoIndex, IGetAnchoredDisplayeeList, IGetFletchBuckle, IMakeXmlSource, IAbstractNote, IDuplicate, IClearCache
Inheritance
MillingTool
Implements
Inherited Members
Extension Methods

Constructors

MillingTool()

Ctor.

public MillingTool()

MillingTool(XElement, string, string)

Initializes a new instance of the MillingTool class.

public MillingTool(XElement src, string baseDirectory, string relFile)

Parameters

src XElement

The XML element containing the tool configuration.

baseDirectory string

The base directory for resolving relative paths.

relFile string

The relative file path.

Properties

AbstractNote

Gets an abstract note describing the tool's dimensions and cutter.

public string AbstractNote { get; }

Property Value

string

Asmb

Gets the assembly containing the tool components.

public Asmb Asmb { get; }

Property Value

Asmb

Cutter

Gets the cutting tool.

public ICutter Cutter { get; set; }

Property Value

ICutter

CutterFile

Gets or sets the file path of the cutter.

public string CutterFile { get; set; }

Property Value

string

ExposedCutterBendingPara_umdN

Gets or sets the parameter for exposed cutter bending in micrometers per Newton.

public double ExposedCutterBendingPara_umdN { get; }

Property Value

double

ExposedCutterHeight_mm

Gets or sets the exposed cutter height in millimeters.

public double ExposedCutterHeight_mm { get; set; }

Property Value

double

ExposedCutterZDeflectionPara_umdN

Gets or sets the parameter for exposed cutter Z-axis deflection in micrometers per Newton.

public double ExposedCutterZDeflectionPara_umdN { get; }

Property Value

double

Holder

Gets or sets the tool holder.

public IHolder Holder { get; set; }

Property Value

IHolder

HolderFile

Gets or sets the holder file path.

public string HolderFile { get; set; }

Property Value

string

KeyCutterAlignmentMode

Gets or sets the key cutter alignment mode.

public MillingTool.CutterAlignmentMode KeyCutterAlignmentMode { get; set; }

Property Value

MillingTool.CutterAlignmentMode

Note

Gets or sets a note for this machining tool.

public string Note { get; set; }

Property Value

string

ObservationAnchor

Gets the tool anchor reference point.

public Anchor ObservationAnchor { get; }

Property Value

Anchor

ObservationAnchorReference

Gets the tool observation anchor reference point.

public MillingToolAnchorReference ObservationAnchorReference { get; set; }

Property Value

MillingToolAnchorReference

ObservationHeightFromToolTip

Gets the tool observation point relative to the reference.

public double ObservationHeightFromToolTip { get; }

Property Value

double

ObservationRingRadius_mm

Gets the tool observation reference point.

public double ObservationRingRadius_mm { get; set; }

Property Value

double

PreservedDistanceBetweenFluteAndSpindleNose_mm

Gets or sets the preserved distance between flute and clamp in millimeters.

public double PreservedDistanceBetweenFluteAndSpindleNose_mm { get; set; }

Property Value

double

RelativeHeightFromObservationAnchor_mm

Gets the tool observation point relative to the reference.

public double RelativeHeightFromObservationAnchor_mm { get; set; }

Property Value

double

SpindleBuckle

Gets the motor-side buckle.

public Anchor SpindleBuckle { get; }

Property Value

Anchor

SpindleBuckleToToolTipLength

Height For NC Compensation table and step number computation.

public double SpindleBuckleToToolTipLength { get; }

Property Value

double

ToolTip

Gets the tool tip anchor point from the cutter.

public Anchor ToolTip { get; }

Property Value

Anchor

XName

Initializes a new instance of the StickMachiningTool class from XML data.

public static string XName { get; }

Property Value

string

Methods

AlignAnchorByExposedCutterHeight()

Aligns the anchor by the exposed cutter height.

public void AlignAnchorByExposedCutterHeight()

ClearCache()

Clears any cached data held by the implementing object.

public void ClearCache()

Display(Bind)

Display function called in DispEngine rendering loop.

public void Display(Bind bind)

Parameters

bind Bind

Bind with DispEngine. See Bind.

Duplicate(params object[])

Creates a deep copy of the object, excluding any source file references.

public object Duplicate(params object[] res)

Parameters

res object[]

Optional parameters that may be needed during the duplication process

Returns

object

A new instance that is a deep copy of the original object

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 Box3d

Destination box

Remarks

For display

GetAnchor()

Get key anchor. (i.e. root anchor)

public Anchor GetAnchor()

Returns

Anchor

key anchor

GetAnchoredDisplayeeList()

Gets a list of anchored displayable objects.

public List<IAnchoredDisplayee> GetAnchoredDisplayeeList()

Returns

List<IAnchoredDisplayee>

A list of IAnchoredDisplayee objects

GetAsmb()

Gets the key asmb.

public Asmb GetAsmb()

Returns

Asmb

The key asmb.

GetFletchBuckle()

Get fletch buckle anchor. the anchor that generally connect to fixed part such as ground and triggering(motor)-side.

public Anchor GetFletchBuckle()

Returns

Anchor

buckle anchor

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 string

The base directory for resolving relative paths

relFile string

The relative file path for the XML source

Returns

XElement

An XML element representing the object's state

Remarks

For the demand of easy moving source folder (especially project folder) without configuration file path corruption, the relative file path is applied. The baseDirectory is typically the folder at the nearest configuration file folder. Since the folder can be moving with the configuration file.