Table of Contents

Class SimpleSessionCommand

Namespace
Hi.ShellCommands
Assembly
HiNc.dll

Simple session command for executing machining operations.

public class SimpleSessionCommand : IShellCommand, IMakeXmlSource
Inheritance
SimpleSessionCommand
Implements
Inherited Members
Extension Methods

Constructors

SimpleSessionCommand()

Ctor.

public SimpleSessionCommand()

SimpleSessionCommand(XElement, string, string, params object[])

Ctor.

public SimpleSessionCommand(XElement src, string baseDirectory, string relFile, params object[] res)

Parameters

src XElement

XML

baseDirectory string

Base directory for relative paths

relFile string

Relative file path

res object[]

Additional resources

Properties

EnableCollisionDetection

Gets or sets whether collision detection is enabled.

public bool EnableCollisionDetection { get; set; }

Property Value

bool

EnableGeomDiff

Gets or sets whether to enable geometry difference detection.

public bool EnableGeomDiff { get; set; }

Property Value

bool

EnableOptimizeToFiles

Gets or sets whether to enable optimization to files.

public bool EnableOptimizeToFiles { get; set; }

Property Value

bool

EnablePauseOnFailure

Gets or sets whether to pause on failure.

public bool EnablePauseOnFailure { get; set; }

Property Value

bool

EnableReadRuntimeGeom

Gets or sets whether to enable reading runtime geometry.

public bool EnableReadRuntimeGeom { get; set; }

Property Value

bool

EnableWriteRuntimeGeom

Gets or sets whether to write runtime geometry to file.

public bool EnableWriteRuntimeGeom { get; set; }

Property Value

bool

EnableWriteShotFiles

Gets or sets whether to write shot files.

public bool EnableWriteShotFiles { get; set; }

Property Value

bool

EnableWriteStepFiles

Gets or sets whether to write step files.

public bool EnableWriteStepFiles { get; set; }

Property Value

bool

GeomDiffDetectRadius_mm

Gets or sets the geometry difference detection radius in millimeters.

public double GeomDiffDetectRadius_mm { get; set; }

Property Value

double

MachiningMotionResolution

Gets or sets the machining motion resolution.

public IMachiningMotionResolution MachiningMotionResolution { get; set; }

Property Value

IMachiningMotionResolution

MachiningResolution_mm

Gets or sets the machining resolution in millimeters.

public double MachiningResolution_mm { get; set; }

Property Value

double

NcCommandList

Middle command list. Mainly for NC commands. Because of the design idea is for simplicity, only expect the wrapper content to be NcFileCommand or NcCodeCommand or ScriptCommand.

public List<EnablingWrapper> NcCommandList { get; set; }

Property Value

List<EnablingWrapper>

NcOptOption

Gets or sets the NC optimization options.

public NcOptOption NcOptOption { get; set; }

Property Value

NcOptOption

OptimizationFileTemplate

Gets or sets the optimization file template path.

public string OptimizationFileTemplate { get; set; }

Property Value

string

RuntimeGeomFile

Gets or sets the runtime geometry file path.

public string RuntimeGeomFile { get; set; }

Property Value

string

RuntimeGeomFileTemplate

Gets or sets the runtime geometry file template.

public string RuntimeGeomFileTemplate { get; set; }

Property Value

string

ShotFileTemplate

Gets or sets the shot file template path.

public string ShotFileTemplate { get; set; }

Property Value

string

ShotFileTimeResolution_ms

Gets or sets the time resolution for shot files in milliseconds.

public double ShotFileTimeResolution_ms { get; set; }

Property Value

double

StepFileTemplate

Gets or sets the step file template path.

public string StepFileTemplate { get; set; }

Property Value

string

XName

Name for XML IO.

public static string XName { get; }

Property Value

string

Methods

MakeXmlSource(string, string, bool)

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, bool exhibitionOnly)

Parameters

baseDirectory string

The base directory for resolving relative paths

relFile string

The relative file path for the XML source

exhibitionOnly bool

if true, the extended file creation is suppressed.

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.

Run(RuntimeApi)

Runs the command using the provided script API.

public IEnumerable<Action> Run(RuntimeApi scriptApi)

Parameters

scriptApi RuntimeApi

Script API for executing milling commands.

Returns

IEnumerable<Action>

Sequence of actions to be executed.