AuboStudio SDK  0.6.3
direction_node.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_DIRECTION_NODE_H
2#define AUBO_SCOPE_DIRECTION_NODE_H
3
7
8namespace arcs {
9namespace aubo_scope {
11
13{
14public:
15 enum ParameterType : int
16 {
17 /**
18 * The tool motion parameters are inherited from the MoveL or
19 MoveP
20 * parent.
21 */
23
24 /**
25 * The tool motion parameters are selected. <br>
26 *
27 * The Selection instance can be cast to {@link
28 ToolMotionParameters}.
29 */
31 };
32
33 enum Axis : int
34 {
35 /**
36 * Move in the positive X direction relative to the feature.
37 */
39
40 /**
41 * Move in the negative X direction relative to the feature.
42 */
44
45 /**
46 * Move in the positive Y direction relative to the feature.
47 */
49
50 /**
51 * Move in the negative Y direction relative to the feature.
52 */
54
55 /**
56 * Move in the positive Z direction relative to the feature.
57 */
59
60 /**
61 * Move in the negative Z direction relative to the feature.
62 */
64 };
65
67 {
68 /**
69 * A direction vector is specified using an Expression.
70 * The Selection instance can be cast to {@link
71 * DirectionVectorExpression}
72 */
74
75 /**
76 * Direction is specified using an Axis.
77 * The Selection instance can be cast to {@link DirectionAxis}
78 */
80 };
81
83 {
84 /**
85 * The selected feature is no longer available (e.g. because the user
86 * has removed the feature in the Installation or the needed
87 * Installation is not currently loaded)
88 */
90
91 /**
92 * Feature is inherited from the MoveL or MoveP parent.
93 */
95
96 /**
97 * Feature is selected. <br>
98 * The Selection instance can be cast to {@link DirectionNodeFeature}
99 */
101 };
102
105 virtual ~DirectionNode();
106
109
110 /**
111 * @return the Axis used to define the direction.
112 */
114 void setAxis(Axis axis);
115
116 /**
117 *
118 * @return the feature selected for this Direction node.
119 */
120 FeaturePtr getFeature();
121 void setFeature(FeaturePtr feature);
122
125 /**
126 *
127 * @return the expression used to define the direction vector.
128 */
129 ExpressionPtr getExpression();
130 void setExpression(ExpressionPtr expression);
131
134 /**
135 * @return the tool speed to be achieved.
136 */
137 double getToolSpeed();
138 void setToolSpeed(double speed);
139
140 /**
141 * @return the tool acceleration to use for the movement
142 */
144 void setToolAcceleration(double acc);
145
146private:
147 friend class DataSwitch;
149 void *d_{ nullptr };
150};
151
152} // namespace aubo_scope
153} // namespace arcs
154#endif // AUBO_SCOPE_DIRECTION_NODE_H
#define ARCS_ABI_EXPORT
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
void setFeatureSelectionType(FeatureSelectionType selection)
@ EXPRESSION
A direction vector is specified using an Expression.
@ AXIS
Direction is specified using an Axis.
DirectionSelectionType getDirectionSelectionType()
@ SHARED
Feature is inherited from the MoveL or MoveP parent.
@ UNRESOLVED_FEATURE
The selected feature is no longer available (e.g.
@ SHARED_MOTION
The tool motion parameters are inherited from the MoveL or MoveP parent.
@ TOOL_MOTION
The tool motion parameters are selected.
void setFeature(FeaturePtr feature)
@ Y_MINUS
Move in the negative Y direction relative to the feature.
@ Z_PLUS
Move in the positive Z direction relative to the feature.
@ X_MINUS
Move in the negative X direction relative to the feature.
@ Z_MINUS
Move in the negative Z direction relative to the feature.
@ Y_PLUS
Move in the positive Y direction relative to the feature.
@ X_PLUS
Move in the positive X direction relative to the feature.
void setDirectionSelectionType(DirectionSelectionType selection)
DirectionNode(DirectionNode &&f)
void setToolAcceleration(double acc)
void setType(ParameterType type)
DirectionNode(DirectionNode &f)
FeatureSelectionType getFeatureSelectionType()
void setToolSpeed(double speed)
void setExpression(ExpressionPtr expression)