I have thought some more about it and the solution I have in mind is that the layer should work as follow :
We should consider 2 types of layers :
user-layers : layers visible from the user perspective: Those will be called Layer 0, Layer 1, Layer 2… Layer n,
real-layers : layers on the software side.
The idea is that each user-layer is actually a set of 3 ‘real-layers’. So the user-layer ‘Layer 0’ will be in fact a bundle of real-layer[0], real-layer[1] and real-layer[2].
So ‘Layer n’ will be a set of real-layer[3n], real-layer[3n+1] and real-layer[3n+2].
Where real-layer[3n] is the layer for normal geometry of ‘Layer n’, real-layer[3n+1] is the layer for construction geometries for ‘Layer n’ and real-layer[3n+2] is the layer for hidden geometries of ‘Layer n’.
We could potentially make more sub-layers. Maybe 5 if we want also a layer for external geos and one for internal alignment geos. This way the user will be able to select the line style, thickness and color for each type of geos.
Now the user-layers : By default there would be only one, but there would be a taskbox (or an addition to the element taskbox) with a listview where user would be able to create new layers, rename them, customize their colors and so on.
This could be useful if we want to make sketcher a more complete 2D drawing tool, and will let the user make multi-layer DXF for instance.
Thoughts?
Hologram it’s the same here with freecad, so this constraint on empty ground is not really a problem actually.
I like the idea. What I am thinking though, for architecture & urban design, contrary to the simple sketches people advocate for here, I will have to make more complex sketches. I’m thinking, drawing street centrelines, offsetting both sides of the road, bicycle lanes, etc. So for me, it would make sense to create layers based on types of street sections (road, pavement, bicycle lanes, river, drainage, frontyards, etc.). In such cases, it may help to be able to hide construction geometry from a layer but to still show the normal geometries (to display the end result). Or, vice versa, to display the construction lines only, so you can add constraints to the construction lines that drive the sketch. There’ll likely be multiple sketches in my case anyways, so I would like to have the layers multiplied for sketch geometries that are referenced in from prior sketches (like a carbon copy but referenced to the existing sketch).
For the latter referenced sketch geometries, I think they should be put in a separate layer within which the original layer name and sketch name is shown (e.g. “Sketch ‘01’ - Street” or “Sketch ‘Blockout’ - Pavement” in the format “Sketch ‘Sketchname’ - Referenced layer name”).
What is nice about this, as you mentioned, is that you can then export an individual layer or all layers to a DXF.
I personally think that the layers could be created as part of the document settings, so they can serve as re-useable template. At least there should be a way to exchange the layers and linestyle assignments so they can be re-used in other documents. I can imagine there to be a series of checkboxes for all the layers that you could then opt to include for the sketch in the taskbox (incl. all or none buttons).
I like the “1:3 approach”. This seems to be a very natural view (no pun intended) on the matter.
I understood that’s perfectly covered by Paddle’s approach: The user says “hide construction geometry” and the machine hides the corresponding layer. In fact is “construction geometry” an alias for the construction layer inside of the layer.
Tell me, will all these types of lines be displayed in the same way in techdraw?
A little more and the sketcher will become an excellent tool for 2D drawing.
As for me it is better to be able to export directly from Sketcher workbench to SVG or PDF with all auxiliary geometry and dimensions, dimension lines. The output would not be a picture, but a file in curves
SVG is a vector format, so probably creating something similar is possible, but it is not a matter of “exporting” a mere screenshot, you have to dig in to the “sketcher” mechanics and re create entitites in SVG format, but probably in the “standard SVG” format not in the “InkScape corrected one”
Hey, this thread is about adding line patterns to sketcher for construction geometry. Could we make even a modest attempt to stay on topic and not talk about vector graphics or inkscape here?
Anyway, I spent some time working with a local build of this PR and proposed some defaults on GitHub. Feel free to discuss, of particular note, I’m interested in valid reasons how internal reference lines are functionally different than standard construction lines from a user perspective (ie. not a ‘they are different in the code’ type of argument) Also, I’m also curious where else are they used other than in conics, and if there is indeed a functional difference, is there a good argument why they cannot subsequently just be construction geometry instead?
Are you referring to construction lines, internal reference lines, spline points or curvature combs? I’m confused by your explanation. I ask because internal reference lines are given visually unique appearance in sketcher and I’m trying to understand if that is actually necessary. Whats the value, what’s the use-case? How would I treat these any differently than actual construction geometry?