Hello,
I used openscad to design my new thing.
(To fix ideas, imagine 16 alu profile, ~30 small laser cuts, ~150
screws-nuts-rivet, ~10 parts from shelf)
I'm currently in the process of writing an assembly manual for the end user,
who will assemble everything.
I'd like to get something that looks like an ikea manual.
Kind of simplified wireframe perspective view, black&white optimized for
printing.
And I'd like to be able to modify my model and simply regenerate all the
assembly views as automated as possible.
I know that in openscad I can programmatically set a view (camera position &
direction, angle, etc...)
How would you do?
Play with openscad wireframe view, change the colors to just black and
white, and export bitmap?
Rotate the object, and make a projection, to export dxf?
Or export a 3D model, STL, or CSG, and process with an external tool, and
which one?
any idea, advice, experience feedback will be much appreciated, Pierre
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Or export a 3D model, STL, or CSG, and process with
an external tool, and which one?
I'd probably try to go this way and export to Blender and
use the Freestyle renderer there.
ciao,
Torsten.
You are tackling a problem I had many times, but never found enough reason to
go deeper into it and implement a solution. I think many people are
confronted with it and would appreciate to have some build-in function at
best, or at least a viable solution for this.
Let me sketch my approach, which is - no wonder - quite similar to the
algorithm I proposed to Jon in the flattening curved surfaces
http://forum.openscad.org/flattening-curved-surfaces-tp19727p19736.html
thread.
Jon wanted to unroll dominant surfaces of 3D objects (by the way, Jon, how
is your progress?) on 2D. For this he had to separate the model into a set
of surfaces. Using the assumption the surfaces are unrollable, it is enough
to test the scalar product of the normals of adjoint triags against a
threshold.
The same approach can be used to find the dominant "borders" of a surface.
In this case the unrollability assumption can be weakend into a "almost
unrollable" criterium, which (I hope: to Ronaldos relief) is exactly the
semantics of the threshold test. Let's draw "almost unrollable surfaces", by
skipping less important lines and staying in 3D.
So a "cheap" recipe could be: find all common edges of all adjoint triag
pairs, for which the threshold test fails and draw them on top of the model
similar to the visualisation in my unrolling sufaces demo
http://forum.openscad.org/flattening-curved-surfaces-tp19727p19807.html .
While this little helper is a someliner e.g. in Matlab, it is (again) beyond
the scope of OpenSCAD language as long as no import function for STL data is
available. Having this import function would serve many more requests - from
boundingboxes, calculating distortions, calculating testless unions and many
more.
So my question to the dev team would be: Is it planned, or are there any
objections I might have missed?
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20110.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
@tp3 : Thanks! Although I didn't know blender and it looks like an airliner
cockpit for beginner like me, I managed to find the three options to get
there :
http://forum.openscad.org/file/n20111/4.png
To be honest, the result is better than expected. :-)
Now I just have to found a way to render let's say 30 different views
without redoing everything 30 times.
But it's not anymore an openscad issue....
@Parkinbot, I must admit your approach is not very clear to me, but anyway,
thanks.
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20111.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Interesting approach!
Parkinbot: I got distracted. Still on the list, just not at the top.
Thanks for the prod!
On 1/16/2017 8:27 AM, Parkinbot wrote:
You are tackling a problem I had many times, but never found enough reason to
go deeper into it and implement a solution. I think many people are
confronted with it and would appreciate to have some build-in function at
best, or at least a viable solution for this.
Let me sketch my approach, which is - no wonder - quite similar to the
algorithm I proposed to Jon in the flattening curved surfaces
http://forum.openscad.org/flattening-curved-surfaces-tp19727p19736.html
thread.
Jon wanted to unroll dominant surfaces of 3D objects (by the way, Jon, how
is your progress?) on 2D. For this he had to separate the model into a set
of surfaces. Using the assumption the surfaces are unrollable, it is enough
to test the scalar product of the normals of adjoint triags against a
threshold.
The same approach can be used to find the dominant "borders" of a surface.
In this case the unrollability assumption can be weakend into a "almost
unrollable" criterium, which (I hope: to Ronaldos relief) is exactly the
semantics of the threshold test. Let's draw "almost unrollable surfaces", by
skipping less important lines and staying in 3D.
So a "cheap" recipe could be: find all common edges of all adjoint triag
pairs, for which the threshold test fails and draw them on top of the model
similar to the visualisation in my unrolling sufaces demo
http://forum.openscad.org/flattening-curved-surfaces-tp19727p19807.html .
While this little helper is a someliner e.g. in Matlab, it is (again) beyond
the scope of OpenSCAD language as long as no import function for STL data is
available. Having this import function would serve many more requests - from
boundingboxes, calculating distortions, calculating testless unions and many
more.
So my question to the dev team would be: Is it planned, or are there any
objections I might have missed?
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20110.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2016.0.7996 / Virus Database: 4749/13780 - Release Date: 01/16/17
pierrepoulpe wrote
@Parkinbot, I must admit your approach is not very clear to me, but
anyway, thanks.
Sorry, it was not so much meant as immediate solution or direct answer to
your question, more as a feature request to bring some more functionality
(e.g. your helper function) into OpenSCAD on the longer run ;-)
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20113.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
@Parkinbot
I haven't understood your approach either. Maybe you are trying to find the
silhouette edges of the model seeing from a point of view.
Regarding "import function for STL data": this is a reiterate
question/feature request here. I myself asked in a recent thread why
bounding box functions (which are computed by resize(), for instance) is not
available in code level. Torsten answer that: " internally the geometry will
be known, there's currently no
means to communicate this information to the back to the script." So, I
understand it as a language limitation: there is no way a function can
receive a model as input in the current language. It will be easy in
OpenSCAD2 though.
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20115.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
pierrepoulpe wrote
@tp3 : Thanks! Although I didn't know blender and it looks like an
airliner cockpit for beginner like me,
I managed to find the three options to get there
:
Could you share them?
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20116.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
If you're inclined to shift gears a bit --- curious as to what people think
of the assembly approach which was used on the Shapeoko 2 manual:
http://shapeoko.github.io/Docs/content/tPictures/PS20028-100.svg
If you open that in a browser you can click on the part # list to highlight
the parts.
William
On Mon, Jan 16, 2017 at 8:54 AM, Parkinbot rudolf@parkinbot.com wrote:
pierrepoulpe wrote
@Parkinbot, I must admit your approach is not very clear to me, but
anyway, thanks.
Sorry, it was not so much meant as immediate solution or direct answer to
your question, more as a feature request to bring some more functionality
(e.g. your helper function) into OpenSCAD on the longer run ;-)
--
View this message in context: http://forum.openscad.org/
rendering-for-paper-assembly-manual-tp20108p20113.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Of course (and it's a note to myself in the same time, good idea) :
after deleting default cube, importing your stl, set your view, ctlr+alt+0
to set the camera view.
In World properties, change "Horizon color" to white
In Render tab
resolution 1920x100 100%
check "Freestyle"
In Render layers tab :
under 'layer', uncheck solid
under 'freestyle line style, thickness at 1.5
Render...
That should be enough.
--
View this message in context: http://forum.openscad.org/rendering-for-paper-assembly-manual-tp20108p20118.html
Sent from the OpenSCAD mailing list archive at Nabble.com.