Helix #1048
Replies: 1 comment 7 replies
-
So I think we need to think through a few more use cases for this. But even if the cylinder, I think we need one that takes pitch, I know it's not hard to calculate pitch if you know the revolutions and length, but I think pitch is probably going to be used more, at least for things like thread, pitch is much more important that total revolutions. So maybe we have 3 functions helixRaw({ // need a better name.
length: 20,
pitch: 1,
radius: 2.5,
plane: planeData, // could use startSketchOn name is no great but does return a plane
// angleStart: 0,
// ccw: true,
})
helixPitch({
surface: cylinderBody,
pitch: 2.5,
// angleStart: 0,
// ccw: true,
})
helixRevolutions({
surface: cylinderBody,
revolutions: 10,
// angleStart: 0,
// ccw: true,
}) Or alternatively we keep just the one helix function, but helper function for that can take the cylinder id and return the plane data or similar that's needed. helix({
length: 20,
pitch: 1,
radius: 2.5,
plane: planeData, // could use startSketchOn name is no great but does return a plane
// angleStart: 0,
// ccw: true,
})
helix(helixPitchHelper({
surface: cylinderBody,
pitch: 2.5,
// angleStart: 0,
// ccw: true,
}))
helix(helixRevolutionsHelper({
surface: cylinderBody,
revolutions: 10,
// angleStart: 0,
// ccw: true,
})) Thoughts? |
Beta Was this translation helpful? Give feedback.
-
Description
A tool that allows the user to create a helix on a cylindrical surface.
Functionality
Supporting Docs/Images
https://github.com/KittyCAD/modeling-app/assets/114548659/f0633820-1cff-42e5-a21d-2b580b5e8c62
https://github.com/KittyCAD/modeling-app/assets/114548659/8d222bef-f229-434b-b04b-0c816e7380b1
PseudoKCL
Expected Result:
![Screenshot 2023-11-09 at 4 18 16 PM](https://private-user-images.githubusercontent.com/114548659/281908549-3c83c37e-8f9c-4b66-8468-dda594b72efb.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzMDc3MjgsIm5iZiI6MTczOTMwNzQyOCwicGF0aCI6Ii8xMTQ1NDg2NTkvMjgxOTA4NTQ5LTNjODNjMzdlLThmOWMtNGI2Ni04NDY4LWRkYTU5NGI3MmVmYi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjExJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIxMVQyMDU3MDhaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0yZGJlNjk5ZTRjNzdlZGM2MDQ2MGZhOWM4OTVkYmY2ZjhlOGIxNjA3NDFjYTNjYTk4YWE0NjIyYWI4M2IyNDZhJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.bA6Q7XA2ra2YWAiPgdGRDBM3VEIFqecaPUbjfE-WJn4)
Beta Was this translation helpful? Give feedback.
All reactions