cyclecad 2.1.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BILLING-IMPLEMENTATION-SUMMARY.md +425 -0
- package/BILLING-INDEX.md +293 -0
- package/BILLING-INTEGRATION-GUIDE.md +414 -0
- package/COLLABORATION-INDEX.md +440 -0
- package/COLLABORATION-SYSTEM-SUMMARY.md +548 -0
- package/DELIVERABLES.txt +296 -445
- package/DOCKER-BUILD-MANIFEST.txt +483 -0
- package/DOCKER-FILES-REFERENCE.md +440 -0
- package/DOCKER-INFRASTRUCTURE.md +475 -0
- package/DOCKER-README.md +435 -0
- package/Dockerfile +33 -55
- package/ENHANCEMENT_COMPLETION_REPORT.md +383 -0
- package/ENHANCEMENT_SUMMARY.txt +308 -0
- package/FEATURE_INVENTORY.md +235 -0
- package/FUSION360_FEATURES_SUMMARY.md +452 -0
- package/FUSION360_PARITY_ENHANCEMENTS.md +461 -0
- package/FUSION360_PARITY_SUMMARY.md +520 -0
- package/FUSION360_QUICK_REFERENCE.md +351 -0
- package/MODULE_API_REFERENCE.md +712 -0
- package/MODULE_INVENTORY.txt +264 -0
- package/PWA-FILES-CREATED.txt +350 -0
- package/QUICK-START-TESTING.md +126 -0
- package/STEP-IMPORT-QUICKSTART.md +347 -0
- package/STEP-IMPORT-SYSTEM-SUMMARY.md +502 -0
- package/app/css/mobile.css +1074 -0
- package/app/icons/generate-icons.js +203 -0
- package/app/index.html +1342 -5031
- package/app/js/app.js +1312 -514
- package/app/js/billing-ui.js +990 -0
- package/app/js/brep-kernel.js +933 -981
- package/app/js/collab-client.js +750 -0
- package/app/js/mobile-nav.js +623 -0
- package/app/js/mobile-toolbar.js +476 -0
- package/app/js/modules/animation-module.js +497 -3
- package/app/js/modules/billing-module.js +724 -0
- package/app/js/modules/cam-module.js +507 -2
- package/app/js/modules/collaboration-module.js +513 -0
- package/app/js/modules/constraint-module.js +1266 -0
- package/app/js/modules/data-module.js +544 -1146
- package/app/js/modules/formats-module.js +438 -738
- package/app/js/modules/inspection-module.js +393 -0
- package/app/js/modules/mesh-module-enhanced.js +880 -0
- package/app/js/modules/plugin-module.js +597 -0
- package/app/js/modules/rendering-module.js +460 -0
- package/app/js/modules/scripting-module.js +593 -475
- package/app/js/modules/sketch-module.js +998 -2
- package/app/js/modules/step-module-enhanced.js +938 -0
- package/app/js/modules/surface-module.js +312 -0
- package/app/js/modules/version-module.js +420 -0
- package/app/js/offline-manager.js +705 -0
- package/app/js/responsive-init.js +360 -0
- package/app/js/touch-handler.js +429 -0
- package/app/manifest.json +211 -0
- package/app/offline.html +508 -0
- package/app/sw.js +571 -0
- package/app/tests/billing-tests.html +779 -0
- package/app/tests/brep-tests.html +980 -0
- package/app/tests/collab-tests.html +743 -0
- package/app/tests/mobile-tests.html +1299 -0
- package/app/tests/pwa-tests.html +1134 -0
- package/app/tests/step-tests.html +1042 -0
- package/app/tests/test-agent-v3.html +719 -0
- package/cycleCAD-Architecture-v2.pptx +0 -0
- package/docker-compose.yml +225 -0
- package/docs/BILLING-HELP.json +260 -0
- package/docs/BILLING-README.md +639 -0
- package/docs/BILLING-TUTORIAL.md +736 -0
- package/docs/BREP-HELP.json +326 -0
- package/docs/BREP-TUTORIAL.md +802 -0
- package/docs/COLLABORATION-HELP.json +228 -0
- package/docs/COLLABORATION-TUTORIAL.md +818 -0
- package/docs/DOCKER-HELP.json +224 -0
- package/docs/DOCKER-TUTORIAL.md +974 -0
- package/docs/MOBILE-HELP.json +243 -0
- package/docs/MOBILE-RESPONSIVE-README.md +378 -0
- package/docs/MOBILE-TUTORIAL.md +747 -0
- package/docs/PWA-HELP.json +228 -0
- package/docs/PWA-README.md +662 -0
- package/docs/PWA-TUTORIAL.md +757 -0
- package/docs/STEP-HELP.json +481 -0
- package/docs/STEP-IMPORT-TUTORIAL.md +824 -0
- package/docs/TESTING-GUIDE.md +528 -0
- package/docs/TESTING-HELP.json +182 -0
- package/fusion-vs-cyclecad.html +1771 -0
- package/nginx.conf +237 -0
- package/package.json +1 -1
- package/server/Dockerfile.converter +51 -0
- package/server/Dockerfile.signaling +28 -0
- package/server/billing-server.js +487 -0
- package/server/converter-enhanced.py +528 -0
- package/server/requirements-converter.txt +29 -0
- package/server/signaling-server.js +801 -0
- package/tests/docker-tests.sh +389 -0
- package/~$cycleCAD-Architecture-v2.pptx +0 -0
|
@@ -0,0 +1,747 @@
|
|
|
1
|
+
# cycleCAD Mobile Tutorial
|
|
2
|
+
|
|
3
|
+
Complete guide to using cycleCAD on mobile and tablet devices.
|
|
4
|
+
|
|
5
|
+
## Table of Contents
|
|
6
|
+
|
|
7
|
+
1. [Supported Devices & Browsers](#supported-devices--browsers)
|
|
8
|
+
2. [Getting Started](#getting-started)
|
|
9
|
+
3. [Touch Gestures](#touch-gestures)
|
|
10
|
+
4. [Mobile UI Overview](#mobile-ui-overview)
|
|
11
|
+
5. [Working with Panels](#working-with-panels)
|
|
12
|
+
6. [3D Viewport Touch Controls](#3d-viewport-touch-controls)
|
|
13
|
+
7. [Creating a Sketch on Mobile](#creating-a-sketch-on-mobile)
|
|
14
|
+
8. [Viewing STEP Files](#viewing-step-files)
|
|
15
|
+
9. [Using the Bottom Toolbar](#using-the-bottom-toolbar)
|
|
16
|
+
10. [Tips for Effective Mobile CAD](#tips-for-effective-mobile-cad)
|
|
17
|
+
11. [Performance Optimization](#performance-optimization)
|
|
18
|
+
12. [Known Limitations](#known-limitations)
|
|
19
|
+
13. [Troubleshooting](#troubleshooting)
|
|
20
|
+
|
|
21
|
+
## Supported Devices & Browsers
|
|
22
|
+
|
|
23
|
+
### Tablets
|
|
24
|
+
- **iPad** (7th gen and newer) — Recommended for optimal experience
|
|
25
|
+
- **iPad Pro** (all models) — Best performance and screen real estate
|
|
26
|
+
- **Samsung Galaxy Tab** — S7 and newer recommended
|
|
27
|
+
- **Android tablets** (10" and larger) — Works well
|
|
28
|
+
- **Microsoft Surface** (tablet mode) — Full support
|
|
29
|
+
|
|
30
|
+
### Phones
|
|
31
|
+
- **iPhone 12** and newer — Recommended minimum
|
|
32
|
+
- **iPhone SE** (2nd gen) — Supported but cramped
|
|
33
|
+
- **Samsung Galaxy S20** and newer — Recommended
|
|
34
|
+
- **Android phones** (6" and larger) — Works better than smaller screens
|
|
35
|
+
- **Foldable devices** — Tested on Samsung Galaxy Z Fold/Flip
|
|
36
|
+
|
|
37
|
+
### Browsers
|
|
38
|
+
- **Safari** (iOS 14+) — Recommended for iPhones/iPads (best performance)
|
|
39
|
+
- **Chrome** (iOS/Android) — Fully supported
|
|
40
|
+
- **Firefox** (iOS/Android) — Supported
|
|
41
|
+
- **Edge** (iOS/Android) — Supported
|
|
42
|
+
- **Samsung Internet** — Fully supported on Samsung devices
|
|
43
|
+
|
|
44
|
+
**Minimum Requirements:**
|
|
45
|
+
- Screen: 480px wide (landscape phone) or taller (portrait)
|
|
46
|
+
- RAM: 2GB+
|
|
47
|
+
- Storage: 500MB free for app cache
|
|
48
|
+
- Connection: 4G LTE or WiFi recommended
|
|
49
|
+
|
|
50
|
+
## Getting Started
|
|
51
|
+
|
|
52
|
+
### First Launch
|
|
53
|
+
1. Navigate to **cyclecad.com/app** on your mobile device
|
|
54
|
+
2. Allow browser permissions:
|
|
55
|
+
- Microphone (optional, for voice commands)
|
|
56
|
+
- Camera (optional, for AR features)
|
|
57
|
+
- Storage (for saving files)
|
|
58
|
+
3. Browser will download ~50MB of app data on first load
|
|
59
|
+
4. Tap **"Open App"** to start
|
|
60
|
+
|
|
61
|
+
### Offline Access
|
|
62
|
+
cycleCAD works offline after first load. Your work is saved to device storage:
|
|
63
|
+
- **Auto-save**: Every 30 seconds
|
|
64
|
+
- **Manual save**: Tap **Settings** → **Save Project**
|
|
65
|
+
- **Cloud sync**: Requires Pro account (coming Q3 2026)
|
|
66
|
+
|
|
67
|
+
### Landscape vs Portrait
|
|
68
|
+
- **Landscape (480+ px wide)**: Full UI with left panel, viewport, right panel
|
|
69
|
+
- **Portrait (<480 px wide)**: Single-panel mode, swipe to navigate
|
|
70
|
+
|
|
71
|
+
The app automatically adapts. On notch devices (iPhone X+), safe areas are respected.
|
|
72
|
+
|
|
73
|
+
## Touch Gestures
|
|
74
|
+
|
|
75
|
+
### Single-Finger Gestures
|
|
76
|
+
|
|
77
|
+
#### Tap (Quick touch and release)
|
|
78
|
+
- **On 3D part**: Select the part, show info panel
|
|
79
|
+
- **On button**: Activate the button
|
|
80
|
+
- **On tree item**: Expand/collapse folder or select feature
|
|
81
|
+
- **On viewport**: Deselect current part
|
|
82
|
+
|
|
83
|
+
#### Double-Tap
|
|
84
|
+
- **On 3D part**: Fit selected part to viewport with zoom animation
|
|
85
|
+
- **On toolbar button**: Activate and show tool options
|
|
86
|
+
- **On 3D area**: Fit all parts to view
|
|
87
|
+
|
|
88
|
+
#### Long-Press (Press for 500ms)
|
|
89
|
+
- **On 3D part**: Show context menu with options:
|
|
90
|
+
- Hide/Show
|
|
91
|
+
- Isolate
|
|
92
|
+
- Move
|
|
93
|
+
- Delete
|
|
94
|
+
- Export STL
|
|
95
|
+
- Copy properties
|
|
96
|
+
- **On tree item**: Show advanced options
|
|
97
|
+
- **On toolbar**: Show tool tip and keyboard shortcut hint
|
|
98
|
+
|
|
99
|
+
#### Swipe (Drag and release)
|
|
100
|
+
- **Left swipe**: Open right properties panel
|
|
101
|
+
- **Right swipe**: Open left model tree panel
|
|
102
|
+
- **Up swipe**: Expand timeline or expand bottom sheet
|
|
103
|
+
- **Down swipe**: Collapse timeline or close bottom sheet
|
|
104
|
+
|
|
105
|
+
### Two-Finger Gestures
|
|
106
|
+
|
|
107
|
+
#### Pinch (Two fingers apart/together)
|
|
108
|
+
- **Spread (apart)**: Zoom in
|
|
109
|
+
- **Pinch (together)**: Zoom out
|
|
110
|
+
- **Scale**: Controlled by how fast you move
|
|
111
|
+
- Works over 3D viewport and sketcher canvas
|
|
112
|
+
|
|
113
|
+
#### Two-Finger Rotate
|
|
114
|
+
- **Clockwise**: Rotate viewport clockwise
|
|
115
|
+
- **Counter-clockwise**: Rotate viewport counter-clockwise
|
|
116
|
+
- Useful for viewing part from different angles without using buttons
|
|
117
|
+
- Works smoothly with pinch (independent gestures)
|
|
118
|
+
|
|
119
|
+
#### Two-Finger Pan
|
|
120
|
+
- **Drag together**: Pan the viewport left/right/up/down
|
|
121
|
+
- Used to move the view without rotating
|
|
122
|
+
- Right-click equivalent on desktop
|
|
123
|
+
|
|
124
|
+
### Three-Finger Gesture
|
|
125
|
+
|
|
126
|
+
#### Three-Finger Tap
|
|
127
|
+
- Triggers **Undo** (Ctrl+Z equivalent)
|
|
128
|
+
- Useful shortcut without accessing menu
|
|
129
|
+
- Four-finger tap = Redo
|
|
130
|
+
|
|
131
|
+
### Context Menu (Long-Press)
|
|
132
|
+
|
|
133
|
+
When you long-press a part or feature:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
┌────────────────────────┐
|
|
137
|
+
│ Select │
|
|
138
|
+
├────────────────────────┤
|
|
139
|
+
│ 👁️ Hide │
|
|
140
|
+
│ 🔍 Isolate │
|
|
141
|
+
│ ➡️ Move │
|
|
142
|
+
│ 📋 Copy │
|
|
143
|
+
│ ✂️ Cut │
|
|
144
|
+
│ 🗑️ Delete │
|
|
145
|
+
│ 📊 Properties │
|
|
146
|
+
│ 💾 Export STL │
|
|
147
|
+
│ 🔗 Suppress │
|
|
148
|
+
└────────────────────────┘
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Press the X button or swipe down to close.
|
|
152
|
+
|
|
153
|
+
## Mobile UI Overview
|
|
154
|
+
|
|
155
|
+
### Portrait Phone (<480px width)
|
|
156
|
+
|
|
157
|
+
**Header** (44px)
|
|
158
|
+
- Hamburger menu button (⋯ three lines)
|
|
159
|
+
- App title
|
|
160
|
+
|
|
161
|
+
**3D Viewport** (Main area)
|
|
162
|
+
- Full available space
|
|
163
|
+
- Touch to interact with model
|
|
164
|
+
- Long-press for context menu
|
|
165
|
+
|
|
166
|
+
**Bottom Toolbar** (44px)
|
|
167
|
+
- 6-8 most-used tools
|
|
168
|
+
- Icons only (no labels in portrait)
|
|
169
|
+
- Tap ⋯ "More" for full grid
|
|
170
|
+
|
|
171
|
+
**Safe Areas**
|
|
172
|
+
- Top: notch (iPhone X+)
|
|
173
|
+
- Bottom: home indicator
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
┌─────────────────────────────┐
|
|
177
|
+
│ ≡ cycleCAD │ ← Menu (44px header)
|
|
178
|
+
├─────────────────────────────┤
|
|
179
|
+
│ │
|
|
180
|
+
│ │
|
|
181
|
+
│ 3D Viewport │ ← Touch to interact
|
|
182
|
+
│ │
|
|
183
|
+
│ │
|
|
184
|
+
├─────────────────────────────┤
|
|
185
|
+
│ ✏️ 🧊 📐 👁️ ⚙️ ⋯ │ ← Toolbar (44px)
|
|
186
|
+
└─────────────────────────────┘
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Landscape Phone (480-600px)
|
|
190
|
+
|
|
191
|
+
Same as portrait, but narrower sidebar panels.
|
|
192
|
+
|
|
193
|
+
```
|
|
194
|
+
┌────────────────────────────────────────┐
|
|
195
|
+
│ ≡ cycleCAD │
|
|
196
|
+
├────────────────────────────────────────┤
|
|
197
|
+
│ 📂 │ │ ⚙️ │
|
|
198
|
+
│ ▼ │ 3D Viewport │ ▼ │
|
|
199
|
+
│ │ │ │
|
|
200
|
+
├────┤ ├────┤
|
|
201
|
+
│ ✏️ 🧊 📐 👁️ ⚙️ ⋯ ... │
|
|
202
|
+
└────────────────────────────────────────┘
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Tablet Portrait (600-900px)
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
┌──────────────────────────────────────────┐
|
|
209
|
+
│ cycleCAD Menu Menu Bar │
|
|
210
|
+
├────────┬─────────────────────────┬────────┤
|
|
211
|
+
│ Model │ │ Props │
|
|
212
|
+
│ Tree │ 3D Viewport │ Panel │
|
|
213
|
+
│ │ │ │
|
|
214
|
+
│ (260) │ │ (280) │
|
|
215
|
+
└────────┴─────────────────────────┴────────┘
|
|
216
|
+
│ Toolbar - Full width │
|
|
217
|
+
└──────────────────────────────────────────┘
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Tablet Landscape (900px+)
|
|
221
|
+
|
|
222
|
+
Full desktop layout with all panels visible side-by-side.
|
|
223
|
+
|
|
224
|
+
## Working with Panels
|
|
225
|
+
|
|
226
|
+
### Left Panel (Model Tree)
|
|
227
|
+
|
|
228
|
+
**Opening** (if not visible):
|
|
229
|
+
- **Landscape/Portrait**: Swipe right or tap hamburger menu → "Model"
|
|
230
|
+
- **Tablet**: Always visible as sidebar
|
|
231
|
+
|
|
232
|
+
**Tree Features**:
|
|
233
|
+
- Expand/collapse feature folders
|
|
234
|
+
- Tap feature name to select and highlight in 3D view
|
|
235
|
+
- Long-press for context menu:
|
|
236
|
+
- Suppress/unsuppress feature
|
|
237
|
+
- Rename feature
|
|
238
|
+
- Delete feature
|
|
239
|
+
- Show/hide feature
|
|
240
|
+
- Reorder features
|
|
241
|
+
|
|
242
|
+
**Closing**:
|
|
243
|
+
- Swipe left or tap viewport
|
|
244
|
+
|
|
245
|
+
### Right Panel (Properties)
|
|
246
|
+
|
|
247
|
+
**Opening** (if not visible):
|
|
248
|
+
- **Landscape/Portrait**: Swipe left or tap right-panel icon
|
|
249
|
+
- **Tablet**: Always visible as sidebar
|
|
250
|
+
|
|
251
|
+
**Properties Tab**:
|
|
252
|
+
- Current selection details
|
|
253
|
+
- Dimensions and parameters
|
|
254
|
+
- Material and appearance
|
|
255
|
+
- Edit directly on the card
|
|
256
|
+
|
|
257
|
+
**Chat Tab** (AI):
|
|
258
|
+
- Ask questions about the model
|
|
259
|
+
- Get suggestions
|
|
260
|
+
- Describe what you want to do
|
|
261
|
+
|
|
262
|
+
**Closing**:
|
|
263
|
+
- Swipe right or tap viewport
|
|
264
|
+
|
|
265
|
+
### Bottom Sheet (More Options)
|
|
266
|
+
|
|
267
|
+
When you tap ⋯ "More" button:
|
|
268
|
+
|
|
269
|
+
```
|
|
270
|
+
┌─────────────────────────┐
|
|
271
|
+
│ ────── (drag handle) │
|
|
272
|
+
│ │
|
|
273
|
+
│ ✏️ Sketch Tools │ ← Category
|
|
274
|
+
│ │
|
|
275
|
+
│ [icon] [icon] [icon] │
|
|
276
|
+
│ Tool Tool Tool │
|
|
277
|
+
│ │
|
|
278
|
+
│ 🧊 Solid Tools │
|
|
279
|
+
│ │
|
|
280
|
+
│ [icon] [icon] [icon] │
|
|
281
|
+
│ │
|
|
282
|
+
└─────────────────────────┘
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
**Usage**:
|
|
286
|
+
- Drag handle to resize
|
|
287
|
+
- Scroll to see all tools
|
|
288
|
+
- Tap tool to select it
|
|
289
|
+
- Bottom sheet auto-closes after tool selection
|
|
290
|
+
- Swipe down to close manually
|
|
291
|
+
|
|
292
|
+
## 3D Viewport Touch Controls
|
|
293
|
+
|
|
294
|
+
### Rotation
|
|
295
|
+
- **1 finger drag**: Rotate model around center
|
|
296
|
+
- **2 fingers rotate**: Free rotation (around all axes)
|
|
297
|
+
- Smooth momentum scrolling
|
|
298
|
+
|
|
299
|
+
### Zoom
|
|
300
|
+
- **Pinch in/out**: Zoom in/out
|
|
301
|
+
- **Double-tap**: Fit selection to view
|
|
302
|
+
- **Double-tap empty area**: Fit all to view
|
|
303
|
+
- Min/max zoom limits prevent going too close or far
|
|
304
|
+
|
|
305
|
+
### Pan (Move)
|
|
306
|
+
- **2 fingers drag**: Pan the viewport
|
|
307
|
+
- **Right-click equivalent**: Two-finger drag without rotating
|
|
308
|
+
- Useful for repositioning without orbiting
|
|
309
|
+
|
|
310
|
+
### Center Model
|
|
311
|
+
- **Tap center button** in view controls (bottom-right)
|
|
312
|
+
- Or **double-tap** on a part to center it
|
|
313
|
+
|
|
314
|
+
### Reset View
|
|
315
|
+
- **Tap home button** in view controls
|
|
316
|
+
- Resets to default front view and fit-all
|
|
317
|
+
- Works from any orientation
|
|
318
|
+
|
|
319
|
+
### View Presets
|
|
320
|
+
- **Tap view button** (bottom-right)
|
|
321
|
+
- Shows 6 preset views:
|
|
322
|
+
- Front (Z-)
|
|
323
|
+
- Back (Z+)
|
|
324
|
+
- Top (Y+)
|
|
325
|
+
- Bottom (Y-)
|
|
326
|
+
- Left (X-)
|
|
327
|
+
- Right (X+)
|
|
328
|
+
- Tap any preset for instant view change
|
|
329
|
+
|
|
330
|
+
### ViewCube (Corner Indicator)
|
|
331
|
+
- Located top-right of viewport
|
|
332
|
+
- Shows current orientation
|
|
333
|
+
- Tap faces/edges/corners to snap to that view
|
|
334
|
+
- Long-press and drag to rotate continuously
|
|
335
|
+
|
|
336
|
+
## Creating a Sketch on Mobile
|
|
337
|
+
|
|
338
|
+
### Starting a Sketch
|
|
339
|
+
|
|
340
|
+
1. **Tap ✏️ Sketch button** in toolbar
|
|
341
|
+
2. Select **Face or Plane**:
|
|
342
|
+
- Tap the face/plane in 3D view
|
|
343
|
+
- Or choose from dropdown (XY/YZ/XZ planes)
|
|
344
|
+
3. **Canvas appears** as overlay on 3D view
|
|
345
|
+
|
|
346
|
+
### Sketch Tools
|
|
347
|
+
|
|
348
|
+
**Available in portrait bottom toolbar**:
|
|
349
|
+
- ✏️ **Line**: Tap to start, tap points to draw
|
|
350
|
+
- ⬜ **Rectangle**: Tap corner 1, corner 2
|
|
351
|
+
- ⭕ **Circle**: Tap center, tap edge point
|
|
352
|
+
- ⌒ **Arc**: Tap start, tap arc point, tap end
|
|
353
|
+
|
|
354
|
+
**More tools** (tap ⋯ More):
|
|
355
|
+
- Polyline (continuous lines)
|
|
356
|
+
- Bezier curve
|
|
357
|
+
- Ellipse
|
|
358
|
+
- Construction line
|
|
359
|
+
- Point
|
|
360
|
+
- Dimension tool
|
|
361
|
+
- Constraint tool
|
|
362
|
+
|
|
363
|
+
### Drawing Lines
|
|
364
|
+
|
|
365
|
+
```
|
|
366
|
+
Tap canvas to start
|
|
367
|
+
↓
|
|
368
|
+
[Point 1] ← First tap
|
|
369
|
+
↓
|
|
370
|
+
[Point 2] ← Drag and tap
|
|
371
|
+
↓
|
|
372
|
+
[Point 3] ← Continue tapping
|
|
373
|
+
↓
|
|
374
|
+
Double-tap → Finish line
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
### Grid & Snapping
|
|
378
|
+
|
|
379
|
+
- **Grid visible** when zoomed in
|
|
380
|
+
- **Snapping enabled** automatically:
|
|
381
|
+
- Snap to grid points
|
|
382
|
+
- Snap to endpoints
|
|
383
|
+
- Snap perpendicular
|
|
384
|
+
- Snap tangent
|
|
385
|
+
- Toggle grid: **Settings → Grid**
|
|
386
|
+
|
|
387
|
+
### Constraints
|
|
388
|
+
|
|
389
|
+
After drawing, add constraints:
|
|
390
|
+
|
|
391
|
+
1. **Tap constraint button** (📐)
|
|
392
|
+
2. **Select constraint type**:
|
|
393
|
+
- Horizontal/Vertical
|
|
394
|
+
- Parallel/Perpendicular
|
|
395
|
+
- Equal length
|
|
396
|
+
- Tangent
|
|
397
|
+
- Distance/Angle
|
|
398
|
+
- Fixed point
|
|
399
|
+
3. **Select geometry** to constrain
|
|
400
|
+
4. **Enter value** if required
|
|
401
|
+
|
|
402
|
+
### Finishing Sketch
|
|
403
|
+
|
|
404
|
+
1. **Tap ✓ Done** button (top-right)
|
|
405
|
+
2. Sketch converts to 3D face
|
|
406
|
+
3. Ready for next operation
|
|
407
|
+
|
|
408
|
+
## Viewing STEP Files
|
|
409
|
+
|
|
410
|
+
### Importing STEP Files
|
|
411
|
+
|
|
412
|
+
1. **Tap File → Import** or **⋯ More → Import**
|
|
413
|
+
2. **Choose source**:
|
|
414
|
+
- Camera/Photos (if saved to device)
|
|
415
|
+
- iCloud Drive (if signed in)
|
|
416
|
+
- Files app
|
|
417
|
+
- Drag and drop on web app
|
|
418
|
+
3. **Wait for import** (may take 1-3 minutes for large files)
|
|
419
|
+
4. **Model loads** in 3D viewport
|
|
420
|
+
|
|
421
|
+
### File Limitations (Mobile)
|
|
422
|
+
|
|
423
|
+
- **Max file size**: 100MB (browser limit)
|
|
424
|
+
- **Max parts**: ~500 parts recommended
|
|
425
|
+
- For larger files:
|
|
426
|
+
- Use desktop cycleCAD or Fusion 360
|
|
427
|
+
- Split STEP assembly into sub-assemblies
|
|
428
|
+
- Export individual parts
|
|
429
|
+
|
|
430
|
+
### Viewing Imported Models
|
|
431
|
+
|
|
432
|
+
- **Rotate**: Drag with 1 finger
|
|
433
|
+
- **Zoom**: Pinch with 2 fingers
|
|
434
|
+
- **Pan**: Drag with 2 fingers
|
|
435
|
+
- **View presets**: Tap view button
|
|
436
|
+
- **Hide parts**: Long-press → Hide
|
|
437
|
+
- **Select part**: Tap to highlight
|
|
438
|
+
|
|
439
|
+
### Exporting Back
|
|
440
|
+
|
|
441
|
+
After modifying:
|
|
442
|
+
|
|
443
|
+
1. **Tap 💾 Export** in toolbar
|
|
444
|
+
2. **Choose format**:
|
|
445
|
+
- STL (3D printing)
|
|
446
|
+
- OBJ (universal)
|
|
447
|
+
- glTF (web viewing)
|
|
448
|
+
- JSON (cycleCAD native)
|
|
449
|
+
3. **Download** to device
|
|
450
|
+
4. **Share** via email, cloud, etc.
|
|
451
|
+
|
|
452
|
+
## Using the Bottom Toolbar
|
|
453
|
+
|
|
454
|
+
### Portrait Mode (Phone)
|
|
455
|
+
|
|
456
|
+
Icons only, 6-8 tools:
|
|
457
|
+
|
|
458
|
+
```
|
|
459
|
+
│ ✏️ 🧊 📐 👁️ ⚙️ ⋯ │
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
- **✏️ Sketch**: Enter sketch mode
|
|
463
|
+
- **🧊 Solid**: Extrude, revolve, etc.
|
|
464
|
+
- **📐 Measure**: Measure distances/angles
|
|
465
|
+
- **👁️ View**: Preset views and options
|
|
466
|
+
- **⚙️ Settings**: App settings
|
|
467
|
+
- **⋯ More**: Full tool grid
|
|
468
|
+
|
|
469
|
+
### Landscape Mode (Phone)
|
|
470
|
+
|
|
471
|
+
Same icons, but with text labels.
|
|
472
|
+
|
|
473
|
+
### Tablet Mode
|
|
474
|
+
|
|
475
|
+
Full toolbar visible at top or side, with all buttons and labels.
|
|
476
|
+
|
|
477
|
+
### Customizing Toolbar
|
|
478
|
+
|
|
479
|
+
**Settings → Toolbar**:
|
|
480
|
+
- Reorder tools with drag-and-drop
|
|
481
|
+
- Add/remove tools from quick bar
|
|
482
|
+
- Set auto-hide behavior
|
|
483
|
+
- Adjust opacity
|
|
484
|
+
|
|
485
|
+
### Tool Options
|
|
486
|
+
|
|
487
|
+
Some tools have sub-options:
|
|
488
|
+
|
|
489
|
+
1. **Tap and hold** the tool button (1 second)
|
|
490
|
+
2. Menu appears with options
|
|
491
|
+
3. Tap desired option
|
|
492
|
+
4. Tool activates with that setting
|
|
493
|
+
|
|
494
|
+
Example for **Extrude**:
|
|
495
|
+
- Extrude up
|
|
496
|
+
- Extrude down
|
|
497
|
+
- Extrude symmetric
|
|
498
|
+
- Extrude new part
|
|
499
|
+
|
|
500
|
+
## Tips for Effective Mobile CAD
|
|
501
|
+
|
|
502
|
+
### 1. Orientation Strategy
|
|
503
|
+
|
|
504
|
+
**Portrait mode**:
|
|
505
|
+
- Good for: Reading text, using tree, making sketches
|
|
506
|
+
- Not ideal for: Viewing complex assemblies, precise selection
|
|
507
|
+
|
|
508
|
+
**Landscape mode**:
|
|
509
|
+
- Good for: Viewing large models, precise work
|
|
510
|
+
- Better touch real estate
|
|
511
|
+
- **Recommendation**: Use landscape for detailed work
|
|
512
|
+
|
|
513
|
+
### 2. Touch Accuracy
|
|
514
|
+
|
|
515
|
+
- **Larger parts**: Easy to select
|
|
516
|
+
- **Small parts**: Zoom in first (pinch out)
|
|
517
|
+
- **Overlapping parts**: Use tree to select
|
|
518
|
+
- **Double-tap**: Center view before detailed work
|
|
519
|
+
|
|
520
|
+
### 3. Sketching on Phone
|
|
521
|
+
|
|
522
|
+
- Sketches are cramped on phone screens
|
|
523
|
+
- **Landscape mode** is essential for sketching
|
|
524
|
+
- For complex sketches:
|
|
525
|
+
- Start on phone
|
|
526
|
+
- Finish on tablet/desktop
|
|
527
|
+
- Use cloud sync (Pro) to switch devices
|
|
528
|
+
|
|
529
|
+
### 4. Battery & Performance
|
|
530
|
+
|
|
531
|
+
**Battery usage**:
|
|
532
|
+
- Disable auto-save if not needed (Settings)
|
|
533
|
+
- Reduce quality on older devices
|
|
534
|
+
- Disable shadows/reflections
|
|
535
|
+
- Close other apps
|
|
536
|
+
|
|
537
|
+
**Performance tips**:
|
|
538
|
+
- Hide assemblies you're not working on
|
|
539
|
+
- Reduce part count (isolate what you need)
|
|
540
|
+
- Restart app if sluggish
|
|
541
|
+
- Close and reopen project
|
|
542
|
+
|
|
543
|
+
### 5. Screen Glare
|
|
544
|
+
|
|
545
|
+
For working outdoors:
|
|
546
|
+
- Rotate to landscape for better angle
|
|
547
|
+
- Use screen brightness control
|
|
548
|
+
- Work in shade when possible
|
|
549
|
+
- Consider anti-glare screen protector
|
|
550
|
+
|
|
551
|
+
### 6. Precision Work
|
|
552
|
+
|
|
553
|
+
For accurate measurements:
|
|
554
|
+
- **Zoom in** to where you're working
|
|
555
|
+
- Use **dimension constraints** in sketches
|
|
556
|
+
- Use **measurement tool** for verification
|
|
557
|
+
- Reference parts with **dimensions shown**
|
|
558
|
+
|
|
559
|
+
### 7. Project Organization
|
|
560
|
+
|
|
561
|
+
On mobile:
|
|
562
|
+
- Keep projects small (under 50 parts)
|
|
563
|
+
- Use clear naming conventions
|
|
564
|
+
- Organize features in logical order
|
|
565
|
+
- Add comments to complex features
|
|
566
|
+
|
|
567
|
+
## Performance Optimization
|
|
568
|
+
|
|
569
|
+
### Device Settings
|
|
570
|
+
|
|
571
|
+
**Enable High Performance Mode** (if available):
|
|
572
|
+
- Settings → Battery → High Performance
|
|
573
|
+
- Increases frame rate and responsiveness
|
|
574
|
+
|
|
575
|
+
**Browser Optimization**:
|
|
576
|
+
- Clear cache regularly: **Settings → Clear Cache**
|
|
577
|
+
- Disable browser extensions
|
|
578
|
+
- Use latest browser version
|
|
579
|
+
- Disable background tabs
|
|
580
|
+
|
|
581
|
+
### App Settings
|
|
582
|
+
|
|
583
|
+
**Graphics Quality**:
|
|
584
|
+
- **Settings → Graphics → Quality**
|
|
585
|
+
- Options:
|
|
586
|
+
- Low (faster, less detailed)
|
|
587
|
+
- Medium (balanced, recommended)
|
|
588
|
+
- High (slower, very detailed)
|
|
589
|
+
|
|
590
|
+
**Shadows**:
|
|
591
|
+
- Can be disabled for performance: **Settings → Shadows**
|
|
592
|
+
- Saves ~20% GPU load
|
|
593
|
+
|
|
594
|
+
**Anti-aliasing**:
|
|
595
|
+
- Smooth edges: Usually enabled
|
|
596
|
+
- Disable if needed for speed
|
|
597
|
+
|
|
598
|
+
**Model Simplification**:
|
|
599
|
+
- **Hide unused parts**: Select and tap ✏️ eye button
|
|
600
|
+
- **Isolate part**: Long-press → Isolate
|
|
601
|
+
- **Delete hidden parts**: Right-click → Delete Hidden
|
|
602
|
+
|
|
603
|
+
### Network
|
|
604
|
+
|
|
605
|
+
- **Auto-save**: Toggle in Settings (saves bandwidth)
|
|
606
|
+
- **Cloud sync**: Available Pro only
|
|
607
|
+
- **Offline work**: Fully supported, sync when connected
|
|
608
|
+
|
|
609
|
+
## Known Limitations
|
|
610
|
+
|
|
611
|
+
### Mobile Limitations
|
|
612
|
+
|
|
613
|
+
1. **File Size**: Max 100MB (browser limit)
|
|
614
|
+
2. **Part Count**: 500+ parts may slow down
|
|
615
|
+
3. **Resolution**: Lower viewport resolution on older devices
|
|
616
|
+
4. **Export Format**: Limited to STL, OBJ, glTF (not DWG)
|
|
617
|
+
5. **Collaboration**: Not available on mobile (Pro feature, desktop only)
|
|
618
|
+
6. **Plugins**: Not supported on mobile
|
|
619
|
+
|
|
620
|
+
### Touch Interaction
|
|
621
|
+
|
|
622
|
+
1. **Precision**: Touch is less accurate than mouse/trackpad
|
|
623
|
+
2. **Multi-select**: Hold Shift not supported; use tree instead
|
|
624
|
+
3. **Keyboard**: On-screen keyboard cramped; use physical if possible
|
|
625
|
+
4. **Context menu**: Via long-press, not right-click
|
|
626
|
+
5. **Dragging**: Limited; use tree panel instead
|
|
627
|
+
|
|
628
|
+
### Performance
|
|
629
|
+
|
|
630
|
+
1. **3D rendering**: 30-60 FPS on tablets, 20-30 FPS on phones
|
|
631
|
+
2. **Large sketches**: May lag with 100+ constraints
|
|
632
|
+
3. **Import time**: 1-3 minutes for 100MB files
|
|
633
|
+
4. **Export time**: 30s-2min depending on format and size
|
|
634
|
+
|
|
635
|
+
## Troubleshooting
|
|
636
|
+
|
|
637
|
+
### App Won't Load
|
|
638
|
+
|
|
639
|
+
**Problem**: Blank screen or "Loading..." forever
|
|
640
|
+
|
|
641
|
+
**Solutions**:
|
|
642
|
+
1. **Hard refresh** browser: Cmd+Shift+R (Mac) or Ctrl+Shift+R (Windows)
|
|
643
|
+
2. **Clear cache**: **Settings → Clear Cache**
|
|
644
|
+
3. **Restart browser**: Close all tabs, reopen
|
|
645
|
+
4. **Restart device**: Full power cycle
|
|
646
|
+
5. **Check connection**: Ensure good WiFi or 4G LTE
|
|
647
|
+
|
|
648
|
+
### Touch Not Responding
|
|
649
|
+
|
|
650
|
+
**Problem**: Taps not registering or slow response
|
|
651
|
+
|
|
652
|
+
**Solutions**:
|
|
653
|
+
1. **Clean screen**: Remove dust/oil (common on phones)
|
|
654
|
+
2. **Hard restart app**: Close and reopen
|
|
655
|
+
3. **Restart device**: Sometimes helps
|
|
656
|
+
4. **Check for updates**: Browser and app updates
|
|
657
|
+
5. **Use older version**: If recent update broken, downgrade browser
|
|
658
|
+
|
|
659
|
+
### Model Won't Import
|
|
660
|
+
|
|
661
|
+
**Problem**: "Import failed" or blank import dialog
|
|
662
|
+
|
|
663
|
+
**Solutions**:
|
|
664
|
+
1. **File size**: Check file is under 100MB
|
|
665
|
+
2. **Format**: Ensure it's valid STEP (.stp or .step)
|
|
666
|
+
3. **File corruption**: Try different file
|
|
667
|
+
4. **Browser compatibility**: Try Chrome instead of Safari
|
|
668
|
+
5. **Network**: Ensure stable connection during import
|
|
669
|
+
|
|
670
|
+
### Performance Lag
|
|
671
|
+
|
|
672
|
+
**Problem**: Slow, choppy interaction
|
|
673
|
+
|
|
674
|
+
**Solutions**:
|
|
675
|
+
1. **Reduce quality**: **Settings → Graphics → Low**
|
|
676
|
+
2. **Hide parts**: Hide parts you're not using
|
|
677
|
+
3. **Restart app**: Close and reopen
|
|
678
|
+
4. **Close other apps**: Free up device memory
|
|
679
|
+
5. **Disable shadows**: **Settings → Shadows → Off**
|
|
680
|
+
6. **Zoom out**: May improve performance on very complex models
|
|
681
|
+
|
|
682
|
+
### Viewport Touch Not Working
|
|
683
|
+
|
|
684
|
+
**Problem**: Can't rotate/zoom model with touch
|
|
685
|
+
|
|
686
|
+
**Solutions**:
|
|
687
|
+
1. **Check gesture**: Ensure you're using correct gesture
|
|
688
|
+
- Single drag = rotate (not pan)
|
|
689
|
+
- Pinch = zoom (two fingers apart/together)
|
|
690
|
+
- Two-finger drag = pan
|
|
691
|
+
2. **Restart app**: Close and reopen
|
|
692
|
+
3. **Test in different area**: Try tapping 3D view center
|
|
693
|
+
4. **Check for overlay**: Modal or panel may be intercepting touches
|
|
694
|
+
|
|
695
|
+
### Saving Issues
|
|
696
|
+
|
|
697
|
+
**Problem**: Changes not saving or "Save failed"
|
|
698
|
+
|
|
699
|
+
**Solutions**:
|
|
700
|
+
1. **Check space**: Ensure device has free storage space
|
|
701
|
+
2. **Check network**: For cloud save, ensure connected
|
|
702
|
+
3. **Permissions**: Go to Settings → App Permissions → Storage
|
|
703
|
+
4. **Auto-save**: Enable in **Settings → Auto-save**
|
|
704
|
+
5. **Manual save**: Try **File → Save Project**
|
|
705
|
+
|
|
706
|
+
### Export Not Working
|
|
707
|
+
|
|
708
|
+
**Problem**: Export button unresponsive or download fails
|
|
709
|
+
|
|
710
|
+
**Solutions**:
|
|
711
|
+
1. **Check format**: STL/OBJ/glTF supported; not DWG
|
|
712
|
+
2. **File size**: Ensure project not >100MB
|
|
713
|
+
3. **Browser permission**: Allow downloads in browser settings
|
|
714
|
+
4. **Restart download**: Try exporting again
|
|
715
|
+
5. **Use email**: Export and email yourself file instead
|
|
716
|
+
|
|
717
|
+
### Sketch Canvas Not Appearing
|
|
718
|
+
|
|
719
|
+
**Problem**: Clicked sketch but canvas didn't open
|
|
720
|
+
|
|
721
|
+
**Solutions**:
|
|
722
|
+
1. **Select face first**: Must select a face/plane before sketching
|
|
723
|
+
2. **Deselect and retry**: Click viewport to deselect, try again
|
|
724
|
+
3. **Restart**: Close and reopen app
|
|
725
|
+
4. **Zoom in**: Sometimes canvas appears but off-screen; zoom to find it
|
|
726
|
+
|
|
727
|
+
### ViewCube Not Responding
|
|
728
|
+
|
|
729
|
+
**Problem**: Can't rotate via ViewCube or view presets not working
|
|
730
|
+
|
|
731
|
+
**Solutions**:
|
|
732
|
+
1. **Tap center**: Tap cube corner/edge precisely
|
|
733
|
+
2. **Rotate gesture**: Use two-finger rotate instead
|
|
734
|
+
3. **View button**: Use preset view buttons instead
|
|
735
|
+
4. **Reset**: Double-tap empty area to reset view
|
|
736
|
+
|
|
737
|
+
---
|
|
738
|
+
|
|
739
|
+
## Support & Feedback
|
|
740
|
+
|
|
741
|
+
Found a bug? Have feature request?
|
|
742
|
+
|
|
743
|
+
- **Report issue**: https://github.com/vvlars-cmd/cyclecad/issues
|
|
744
|
+
- **Email support**: support@cyclecad.com (coming soon)
|
|
745
|
+
- **Chat with AI**: In-app chat for quick help
|
|
746
|
+
|
|
747
|
+
Last updated: March 2026
|