소스 검색

Merge pull request #998 from darconeous/pull-requests/fwretract

FWRETRACT fixes
Erik van der Zalm 10 년 전
부모
커밋
9887555192
1개의 변경된 파일10개의 추가작업 그리고 0개의 파일을 삭제
  1. 10
    0
      Marlin/Marlin_main.cpp

+ 10
- 0
Marlin/Marlin_main.cpp 파일 보기

1165
       retracted[active_extruder]=true;
1165
       retracted[active_extruder]=true;
1166
       prepare_move();
1166
       prepare_move();
1167
       current_position[Z_AXIS]-=retract_zlift;
1167
       current_position[Z_AXIS]-=retract_zlift;
1168
+#ifdef DELTA
1169
+      calculate_delta(current_position); // change cartesian kinematic to  delta kinematic;
1170
+      plan_set_position(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS]);
1171
+#else
1168
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
1172
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
1173
+#endif
1169
       prepare_move();
1174
       prepare_move();
1170
       feedrate = oldFeedrate;
1175
       feedrate = oldFeedrate;
1171
     } else if(!retracting && retracted[active_extruder]) {
1176
     } else if(!retracting && retracted[active_extruder]) {
1174
       destination[Z_AXIS]=current_position[Z_AXIS];
1179
       destination[Z_AXIS]=current_position[Z_AXIS];
1175
       destination[E_AXIS]=current_position[E_AXIS];
1180
       destination[E_AXIS]=current_position[E_AXIS];
1176
       current_position[Z_AXIS]+=retract_zlift;
1181
       current_position[Z_AXIS]+=retract_zlift;
1182
+#ifdef DELTA
1183
+      calculate_delta(current_position); // change cartesian kinematic  to  delta kinematic;
1184
+      plan_set_position(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS]);
1185
+#else
1177
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
1186
       plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
1187
+#endif
1178
       //prepare_move();
1188
       //prepare_move();
1179
       if (swapretract) {
1189
       if (swapretract) {
1180
         current_position[E_AXIS]-=(retract_length_swap+retract_recover_length_swap)/volumetric_multiplier[active_extruder]; 
1190
         current_position[E_AXIS]-=(retract_length_swap+retract_recover_length_swap)/volumetric_multiplier[active_extruder]; 

Loading…
취소
저장