UNPKG

awv3

Version:
48 lines (46 loc) 2.44 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); function point(ccref) { return ccref.state.class === 'CC_Point'; } function line(ccref) { return ccref.state.class === 'CC_Line'; } function arc(ccref) { return ccref.state.class === 'CC_Arc'; } function curve(ccref) { return line(ccref) || arc(ccref); } function any(ccref) { return point(ccref) || curve(ccref); } function f(type, predicates, desc) { function areEntitiesOk(entities) { return entities.length === predicates.length && entities.every(function (entity, i) { return predicates[i](entity); }); } return { type: type, areEntitiesOk: areEntitiesOk, isParametric: desc.includes('p'), isCommutative: desc.includes('c') }; } var angle = exports.angle = f('CC_2DAngleConstraint', [line, line], 'pc'); var angleox = exports.angleox = f('CC_2DAngleOXConstraint', [line], 'p'); var colinear = exports.colinear = f('CC_2DColinearConstraint', [line, line], 'c'); var concentric = exports.concentric = f('CC_2DConcentricConstraint', [arc, arc], 'c'); var distance = exports.distance = f('CC_2DOffsetConstraint', [any, any], 'pc'); var equalDistance = exports.equalDistance = f('CC_2DEqualLengthConstraint', [any, any, any, any], ''); var equalRadius = exports.equalRadius = f('CC_2DEqualRadiusConstraint', [arc, arc], 'c'); var fixation = exports.fixation = f('CC_2DFixationConstraint', [any], ''); var horizontalDistance = exports.horizontalDistance = f('CC_2DHorizontalDistanceConstraint', [any, any], 'p'); var horizontality = exports.horizontality = f('CC_2DHorizontalConstraint', [line], ''); var incidence = exports.incidence = f('CC_2DCoincidentConstraint', [any, any], 'c'); var midpoint = exports.midpoint = f('CC_2DMidpointConstraint', [any, point, any], ''); var parallelity = exports.parallelity = f('CC_2DParallelConstraint', [line, line], 'c'); var perpendicularity = exports.perpendicularity = f('CC_2DPerpendicularConstraint', [line, line], 'c'); var radius = exports.radius = f('CC_2DRadiusConstraint', [arc], 'p'); var symmetric = exports.symmetric = f('CC_2DSymmetryConstraint', [line, any, any], ''); var tangency = exports.tangency = f('CC_2DTangentSketchConstraint', [curve, curve], 'c'); var verticalDistance = exports.verticalDistance = f('CC_2DVerticalDistanceConstraint', [any, any], 'p'); var verticality = exports.verticality = f('CC_2DVerticalConstraint', [line], '');