Class MachineMotionStep
- Namespace
- Hi.MillingSteps
- Assembly
- HiMech.dll
MachiningStep has spindle information. Note that the spindle information is only for milling behavior.
public class MachineMotionStep : IGetFeedrate, IGetSpindleSpeed
- Inheritance
-
MachineMotionStep
- Implements
- Inherited Members
- Extension Methods
Constructors
MachineMotionStep(MachineMotionStep)
Initializes a new instance of the MachineMotionStep class by copying from another instance.
public MachineMotionStep(MachineMotionStep src)
Parameters
src
MachineMotionStepThe source machining step to copy from.
MachineMotionStep(TimeSpan, TimeSpan, double, double[], double, double, SpindleDirection, int, Mat4d, Mat4d, SeqPair<Mat4d>)
Initializes a new instance of the MachineMotionStep class with specified parameters.
public MachineMotionStep(TimeSpan stepDuration, TimeSpan accumulatedTime, double beginSpindleAngle_rad, double[] mcValues, double feedrate_mmds, double spindleSpeed_radds, SpindleDirection spindleDirection, int toolId, Mat4d programZeroToWorkpieceGeomToMat4d, Mat4d workpieceGeomToProgramZeroMat4d, SeqPair<Mat4d> seqOnWorkpieceGeomCoordinate)
Parameters
stepDuration
TimeSpanThe duration of this step.
accumulatedTime
TimeSpanThe accumulated time up to this step.
beginSpindleAngle_rad
doubleThe initial spindle angle in radians.
mcValues
double[]The machine coordinate values.
feedrate_mmds
doubleThe feed rate in millimeters per second.
spindleSpeed_radds
doubleThe spindle speed in radians per second.
spindleDirection
SpindleDirectionThe direction of spindle rotation.
toolId
intThe ID of the tool being used.
programZeroToWorkpieceGeomToMat4d
Mat4dThe transformation matrix from program zero to workpiece geometry.
workpieceGeomToProgramZeroMat4d
Mat4dThe transformation matrix from workpiece geometry to program zero.
seqOnWorkpieceGeomCoordinate
SeqPair<Mat4d>The sequence of transformations on workpiece geometry coordinate.
Properties
AccumulatedTime
The work time at the end of the step.
public TimeSpan AccumulatedTime { get; set; }
Property Value
BeginSpindleAngle_deg
Begin spindle rotation angle. in deg;
public double BeginSpindleAngle_deg { get; set; }
Property Value
BeginSpindleAngle_rad
Begin spindle rotation angle. in rad;
public double BeginSpindleAngle_rad { get; set; }
Property Value
CdnTransformProgramToToolRunning
Gets the transformation matrix from program to tool running coordinate.
public Mat4d CdnTransformProgramToToolRunning { get; }
Property Value
CdnTransformProgramToWorkpieceGeom
Gets the transformation matrix from program zero to workpiece geometry.
public Mat4d CdnTransformProgramToWorkpieceGeom { get; }
Property Value
CdnTransformToolRunningToProgram
Gets the transformation matrix from tool running to program coordinate.
public Mat4d CdnTransformToolRunningToProgram { get; }
Property Value
CdnTransformToolRunningToWorkpieceGeom
Tool running coordinate to workpiece geom coordinate.
public Mat4d CdnTransformToolRunningToWorkpieceGeom { get; }
Property Value
CdnTransformWorkpieceGeomToProgram
Gets the transformation matrix from workpiece geometry to program zero.
public Mat4d CdnTransformWorkpieceGeomToProgram { get; }
Property Value
CdnTransformWorkpieceGeomToToolRunning
Gets the transformation matrix from workpiece geometry to tool running coordinate.
public Mat4d CdnTransformWorkpieceGeomToToolRunning { get; }
Property Value
CyclePeriod
Gets the cycle period as a TimeSpan.
public TimeSpan CyclePeriod { get; }
Property Value
CyclePeriod_s
Gets the cycle period in seconds.
public double CyclePeriod_s { get; }
Property Value
EndSpindleAngle_deg
Gets the end spindle angle in degrees.
public double EndSpindleAngle_deg { get; }
Property Value
EndSpindleAngle_rad
Gets the end spindle angle in radians.
public double EndSpindleAngle_rad { get; }
Property Value
FeedPerCycle_mm
Gets the feed per cycle in millimeters.
public double FeedPerCycle_mm { get; }
Property Value
Feedrate_mmds
Gets or sets the feed rate in millimeters per second.
public double Feedrate_mmds { get; set; }
Property Value
GeomCl
Gets the current position in workpiece geometry coordinate.
public DVec3d GeomCl { get; }
Property Value
McValues
Machine coordinate values.
public double[] McValues { get; set; }
Property Value
- double[]
MoveOnProgramCoordinate_mm
Gets the movement vector in program coordinate in millimeters.
public Vec3d MoveOnProgramCoordinate_mm { get; }
Property Value
MoveOnWorkpieceGeomCoordinate_mm
Gets the movement vector in workpiece geometry coordinate in millimeters.
public Vec3d MoveOnWorkpieceGeomCoordinate_mm { get; }
Property Value
MovingDirectionOnWorkpieceGeomCoordinate
Gets the movement direction vector in workpiece geometry coordinate.
public Vec3d MovingDirectionOnWorkpieceGeomCoordinate { get; }
Property Value
MovingLength_mm
Gets the length of movement in millimeters.
public double MovingLength_mm { get; }
Property Value
PassedSpindleAngle_deg
For milling behavior only.
public double PassedSpindleAngle_deg { get; }
Property Value
PassedSpindleAngle_rad
For milling behavior only.
public double PassedSpindleAngle_rad { get; }
Property Value
ProgramCl
Gets the current position in program coordinate.
public DVec3d ProgramCl { get; }
Property Value
ProgramToWorkpieceGeomMat4d
Gets or sets the transformation matrix from program zero to workpiece geometry.
public Mat4d ProgramToWorkpieceGeomMat4d { get; set; }
Property Value
SeqOnToolRunningCoordinate
Gets the sequence of transformations on tool running coordinate.
public SeqPair<Mat4d> SeqOnToolRunningCoordinate { get; }
Property Value
SeqOnWorkpieceGeomCoordinate
Gets or sets the sequence of transformations on workpiece geometry coordinate.
public SeqPair<Mat4d> SeqOnWorkpieceGeomCoordinate { get; set; }
Property Value
SpindleDirection
Gets or sets the direction of spindle rotation.
public SpindleDirection SpindleDirection { get; set; }
Property Value
SpindleSpeed_cycleds
Gets the spindle speed in cycles per second.
public double SpindleSpeed_cycleds { get; }
Property Value
SpindleSpeed_radds
For milling behavior only.
public double SpindleSpeed_radds { get; set; }
Property Value
SpindleSpeed_rpm
Gets the spindle speed in revolutions per minute.
public double SpindleSpeed_rpm { get; }
Property Value
StepBeginTime
The work time at the begin of the step.
public TimeSpan StepBeginTime { get; }
Property Value
StepDuration
Gets or sets the duration of this step.
public TimeSpan StepDuration { get; set; }
Property Value
ToolId
Gets or sets the ID of the tool being used.
public int ToolId { get; set; }
Property Value
WorkpieceGeomToProgramMat4d
Gets or sets the transformation matrix from workpiece geometry to program zero.
public Mat4d WorkpieceGeomToProgramMat4d { get; set; }
Property Value
Methods
GetFeedPerTooth_mm(IMachiningTool)
Gets the feed per tooth in millimeters.
public double GetFeedPerTooth_mm(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
- double
The feed per tooth in millimeters.
GetFeedrate_mmds()
Gets the program feedrate in millimeters per second.
public double GetFeedrate_mmds()
Returns
- double
Feedrate in mm/s
GetMachiningTool(MachiningToolHouse)
Gets the machining tool from the tool house.
public IMachiningTool GetMachiningTool(MachiningToolHouse toolHouse)
Parameters
toolHouse
MachiningToolHouseThe machining tool house.
Returns
- IMachiningTool
The machining tool.
GetProgramSideCuspHeight_mm(IMachiningTool)
Gets the program side cusp height in millimeters.
public double GetProgramSideCuspHeight_mm(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
- double
The program side cusp height in millimeters.
GetSideCuspList_mm(IMachiningTool)
Gets the list of side cusp heights in millimeters.
public List<double> GetSideCuspList_mm(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
GetSideCuspPhaseInterval_rad(IMachiningTool)
Gets the side cusp phase interval in radians.
public double GetSideCuspPhaseInterval_rad(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
- double
The side cusp phase interval in radians.
GetSpindleDirection()
Gets the spindle rotation direction.
public SpindleDirection GetSpindleDirection()
Returns
- SpindleDirection
The spindle direction (clockwise, counterclockwise, or stopped)
GetSpindleSpeed_radds()
Gets the spindle speed in radians per second.
public double GetSpindleSpeed_radds()
Returns
- double
Spindle speed in rad/s
GetToothArcDuration_s(IMachiningTool)
Gets the duration of a single tooth arc in seconds.
public double GetToothArcDuration_s(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
- double
The duration of a single tooth arc in seconds.
GetToothSeqOnToolRunningCoordinate(IMachiningTool)
Gets the sequence of transformations for a single tooth on tool running coordinate.
public SeqPair<Mat4d> GetToothSeqOnToolRunningCoordinate(IMachiningTool millingTool)
Parameters
millingTool
IMachiningToolThe milling tool.
Returns
ToString()
Returns a string representation of this machining step.
public override string ToString()
Returns
- string
A string representation of this machining step.