-
Notifications
You must be signed in to change notification settings - Fork 2
OTPModulePosition
OTP Module Position
public struct OTPModulePosition: OTPModule, Equatable Implements an OTP Standard Module of the Position type and handles creation and parsing.
This data structure contains the current position of a Point in all three linear directions (x, y, z), and scaling indicating whether units are in μm or mm.
Example usage:
// initialize a module at x = 0.002m, y = 1m, z = 2m
let module = OTPModulePosition(x: 2000, y: 1000000, z: 2000000, scaling: .μm)
Equatable, OTPModule
Initializes this OTPModule with default values.
public init() Initializes an OTP Module Position.
public init(x: Int32, y: Int32, z: Int32, scaling: Scaling) - x: The X position in units dependent on
scaling. - y: The Y position in units dependent on
scaling. - z: The Z position in units dependent on
scaling. - scaling: The scaling of the position.
Uniquely identifies the module using an OTPModuleIdentifier.
public static let identifier: OTPModuleIdentifier The size of the module's data in bytes.
public static let dataLength: OTPPDULength = 13The total size of the module in bytes, including identifiers and length.
public static let moduleLength: OTPPDULength = dataLength + OTPPDULength(ModuleLayer.Offset.data.rawValue)The scaling of the position values in this module.
public var scaling: Scaling = .μmThe X position in units dependent on scaling.
public var x: Int32 = 0 The Y position in units dependent on scaling.
public var y: Int32 = 0 The Z position in units dependent on scaling.
public var z: Int32 = 0 A human-readable log description of this module.
public var logDescription: String Creates a Module as Data.
public func createAsData() -> Data The OTPModule as a Data object.
Attempts to create an OTPModulePosition from the data.
public static func parse(fromData data: Data) throws -> (module: Self, length: OTPPDULength) - data: The data to be parsed.
An error of type ModuleLayerValidationError.
A valid OTPModulePosition and the length of the PDU.
Merges an arrray of modules.
public static func merge(modules: [OTPModule]) -> (module: Self?, excludePoint: Bool) - modules: The
OTPModules to be merged.
An optional OTPModule of this type, and whether to exclude the OTPPoint due to a mismatch.
Calculates whether this module is considered equal to another one.
public func isEqualToModule(_ module: OTPModule) -> Bool - module: The
OTPModuleto be compared against.
Whether these OTPModules are considered equal.
Generated at 2021-09-01T18:46:51+0000 using swift-doc 1.0.0-rc.1.
Types
- ComponentSocketError
- OTPAddress
- OTPComponentState
- OTPConsumer
- OTPConsumerStatus
- OTPIPMode
- OTPModuleIdentifier
- OTPModulePosition
- OTPModulePosition.Scaling
- OTPModulePositionVelAccel
- OTPModuleReferenceFrame
- OTPModuleRotation
- OTPModuleRotationVelAccel
- OTPModuleScale
- OTPPoint
- OTPPointValidationError
- OTPProducer
- OTPProducerStatus