Table of Contents

Class ShapeBasedCutterOptLimit

Namespace
Hi.NcOpt
Assembly
HiMech.dll

Represents optimization limits based on cutter shape parameters.

public class ShapeBasedCutterOptLimit : IFeedPerToothOptLimit, IMakeXmlSource, IDuplicate, IClearCache
Inheritance
ShapeBasedCutterOptLimit
Implements
Inherited Members
Extension Methods

Constructors

ShapeBasedCutterOptLimit(MillingCutter)

Initializes a new instance of the ShapeBasedCutterOptLimit class.

public ShapeBasedCutterOptLimit(MillingCutter cutter)

Parameters

cutter MillingCutter

The milling cutter.

ShapeBasedCutterOptLimit(Func<int>, Func<double>, Func<double>)

Initializes a new instance of the ShapeBasedCutterOptLimit class.

public ShapeBasedCutterOptLimit(Func<int> fluteNumFunc, Func<double> radiusFunc_mm, Func<double> radialReliefAngleFunc_rad)

Parameters

fluteNumFunc Func<int>

Function to get the number of flutes

radiusFunc_mm Func<double>

Function to get the radius in millimeters

radialReliefAngleFunc_rad Func<double>

Function to get the radial relief angle in radians

ShapeBasedCutterOptLimit(XElement, string, MillingCutter)

Ctor.

public ShapeBasedCutterOptLimit(XElement src, string baseDirectory, MillingCutter cutter)

Parameters

src XElement

XML

baseDirectory string

Base directory path for resolving relative paths

cutter MillingCutter

The milling cutter to use for calculations

Properties

FluteNum

Gets the number of flutes.

public int FluteNum { get; }

Property Value

int

FluteNumFunc

Gets or sets the function to get the number of flutes.

public Func<int> FluteNumFunc { get; set; }

Property Value

Func<int>

MinFeedPerTooth_mm

Gets or sets the minimum feed per tooth in millimeters.

public double MinFeedPerTooth_mm { get; set; }

Property Value

double

RadialReliefAngleFunc_rad

Gets or sets the function to get the radial relief angle in radians.

public Func<double> RadialReliefAngleFunc_rad { get; set; }

Property Value

Func<double>

RadialReliefAngle_rad

Gets or sets the radial relief angle in radians.

public double RadialReliefAngle_rad { get; }

Property Value

double

RadiusFunc_mm

Gets or sets the function to get the radius in millimeters.

public Func<double> RadiusFunc_mm { get; set; }

Property Value

Func<double>

Radius_mm

Gets or sets the radius in millimeters.

public double Radius_mm { get; }

Property Value

double

SafetyFactor

Gets or sets the safety factor.

public double SafetyFactor { get; set; }

Property Value

double

XName

Name for XML IO.

public static string XName { get; }

Property Value

string

Methods

ClearCache()

Clears any cached data held by the implementing object.

public void ClearCache()

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

GetMaxFeedPerTooth_mm()

Gets the maximum feed per tooth value in millimeters.

public double GetMaxFeedPerTooth_mm()

Returns

double

The maximum feed per tooth value in millimeters.

GetMinFeedPerTooth_mm()

Gets the minimum feed per tooth value in millimeters.

public double GetMinFeedPerTooth_mm()

Returns

double

The minimum feed per tooth value in millimeters.

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