public ConstraintDocumentHelper(Document document, Node sketchNode) { _document = document; _sketchNode = sketchNode; _constraintMapper = new ConstraintHighLevelDependencyMapping(); DefaultConstraintsMapping.SetupDependencies(_constraintMapper); }
private static void SetLineToLineConstraints(ConstraintHighLevelDependencyMapping constraintMapper) { AddLineOnLineConstraint(constraintMapper, Constraint2DNames.ParallelFunction, "Parallel", "parallel_constraint.png"); AddLineOnLineConstraint(constraintMapper, Constraint2DNames.PerpendicularFunction, "Perpendicular", "perpendicular_constraint.png"); AddLineOnLineConstraint(constraintMapper, Constraint2DNames.ColinearFunction, "Colinear", "perpendicular_constraint.png"); AddLineOnLineConstraint(constraintMapper, Constraint2DNames.EqualLengthFunction, "Same Length", "perpendicular_constraint.png"); }
public static void SetupDependencies(ConstraintHighLevelDependencyMapping constraintMapper) { constraintMapper.Register(Constraint2DNames.PointOnPointFunction, "Point On Point", ResName("perpendicular_constraint.png"), FunctionNames.Point, FunctionNames.Point); //constraintMapper.Register(Constraint2DNames.P2PDistanceFunction, "Point To Point Distance", // ResName("perpendicular_constraint.png"), FunctionNames.Point, FunctionNames.Point); constraintMapper.Register(Constraint2DNames.HorizontalFunction, "Horizontal", ResName("horizontal_constraint.png"), FunctionNames.LineTwoPoints); constraintMapper.Register(Constraint2DNames.VerticalFunction, "Vertical", ResName("vertical_constraint.png"), FunctionNames.LineTwoPoints); SetLineToLineConstraints(constraintMapper); constraintMapper.Register(Constraint2DNames.PointOnArcFunction, "Arc On Point", ResName("perpendicular_constraint.png"), FunctionNames.Arc, FunctionNames.Point); constraintMapper.Register(Constraint2DNames.PointOnCircleFunction, "Circle On Point", ResName("perpendicular_constraint.png"), FunctionNames.Circle, FunctionNames.Point); constraintMapper.Register(Constraint2DNames.TangentToArcFunction, "Tangent Line On Arc", ResName("perpendicular_constraint.png"), FunctionNames.Arc, FunctionNames.LineTwoPoints); constraintMapper.Register(Constraint2DNames.TangentToCircleFunction, "Tangent Line On Circle", ResName("perpendicular_constraint.png"), FunctionNames.Circle, FunctionNames.LineTwoPoints); CircleArcsMethod(constraintMapper); constraintMapper.Register(Constraint2DNames.PointOnLineFunction, "Point on Line", ResName("perpendicular_constraint.png"), FunctionNames.LineTwoPoints, FunctionNames.Point); constraintMapper.Register(Constraint2DNames.PointOnSegmentFunction, "Point on Segment", ResName("perpendicular_constraint.png"), FunctionNames.LineTwoPoints, FunctionNames.Point); constraintMapper.Register(Constraint2DNames.PointOnLineMidpointFunction, "Point on Middle of Line", ResName("perpendicular_constraint.png"), FunctionNames.LineTwoPoints, FunctionNames.Point); }
private static void CircleArcsMethod(ConstraintHighLevelDependencyMapping constraintMapper) { AddArcOnArcConstraint(constraintMapper, Constraint2DNames.ConcentricArcsFunction, "Concentric Arcs", "perpendicular_constraint.png"); AddArcOnArcConstraint(constraintMapper, Constraint2DNames.EqualRadiusArcsFunction, "Equal Radius Arcs", "perpendicular_constraint.png"); AddArcOnCircleConstraint(constraintMapper, Constraint2DNames.EqualRadiusCircArcFunction, "Equal Radius Arc and Circle", "perpendicular_constraint.png"); AddArcOnCircleConstraint(constraintMapper, Constraint2DNames.ConcentricCircArcFunction, "Concentric Arc and Circle", "perpendicular_constraint.png"); AddCircleOnCircleConstraint(constraintMapper, Constraint2DNames.ConcentricCirclesFunction, "Concentric Circles", "perpendicular_constraint.png"); AddCircleOnCircleConstraint(constraintMapper, Constraint2DNames.EqualRadiusCirclesFunction, "Equal Radius Circle and Circle", "perpendicular_constraint.png"); }
private static void AddLineOnLineConstraint(ConstraintHighLevelDependencyMapping constraintMapper, string constraintName, string descriptor, string iconName) { constraintMapper.Register(constraintName, descriptor, ResName(iconName), FunctionNames.LineTwoPoints, FunctionNames.LineTwoPoints); }
private static void AddArcOnArcConstraint(ConstraintHighLevelDependencyMapping constraintMapper, string constraintName, string descriptor, string iconName) { constraintMapper.Register(constraintName, descriptor, ResName(iconName), FunctionNames.Arc, FunctionNames.Arc); }
private static void AddCircleOnCircleConstraint(ConstraintHighLevelDependencyMapping constraintMapper, string constraintName, string descriptor, string iconName) { constraintMapper.Register(constraintName, descriptor, ResName(iconName), FunctionNames.Circle, FunctionNames.Circle); }