[Ticket #4202] Working points, lines and planes

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: [Feature requests] Working points, lines and planes

Post by Zolko »

chrisb wrote: Wed Oct 16, 2019 8:44 am There was a post with some macros for creating datum geometry outside of PartDesign, alas, I cannot find it.

Code: Select all

App.ActiveDocument.addObject('PartDesign::CoordinateSystem', 'LCS_name' )
App.ActiveDocument.addObject('PartDesign::Plane', 'Plane_name' )
App.ActiveDocument.addObject('PartDesign::Point', 'Point_name' )
This will put them at the root of the document. If you want to put them in an App::Part that is already in the document, and if that part is called 'Part' :

Code: Select all

App.ActiveDocument.getObject('Part').newObject( 'PartDesign::CoordinateSystem', 'LCS_new' )
note the difference addObject —vs— newObject
try the Assembly4 workbench for FreCAD — tutorials here and here
User avatar
mfasano
Posts: 122
Joined: Wed Apr 11, 2018 12:31 pm

Re: [Feature requests] Working points, lines and planes

Post by mfasano »

chrisb wrote: Wed Oct 16, 2019 8:50 am Just after finally writing my previous post I had the right idea for searching ...
In this post in the german forum are some macros for DatumGeometry in other WBs.
ickby suggests it would not be hard to code in this thread, but I am not much of a programmer.

https://forum.freecadweb.org/viewtopic.php?f=22&t=33654
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature requests] Working points, lines and planes

Post by Pauvres_honteux »

First of all, this thread is about structuring/making the most basic stuff work flawlessly, no hiccups allowed in any way or form.
Secondly, Zolko's user created coordinate systems must of course be part of the bigger plan / next level of surface creation. Which in turn is the basis of the final solid.
But as me and Zolko already pointed out, most versions of creating these points, lines and planes are in place. It's "just" a matter of creating these pop-up windows (more 3D real estate to the people!) and populate them with what is appropriate for each feature, i.e. one icon + window for point creation, another icon + window for line creation and ditto for planes.

The new paradigm shall be, for example: in orderto create a point on a line one shall only be presented with selection options for that particular creation mode, that is, only attaching the point on a line/curve. Not being able to move it anywhere else with this creation mode! Only movement on and along that line/curve will be allowed in this specific creation mode. This principle shall be forced for every creation mode that can be thought of for these features.

So the principle, and I do stress 'The principle' can be seen here below:
.
Point_Coordinates.png
Point_Coordinates.png (23.39 KiB) Viewed 1187 times
Point: here the option Coordinates was chosen. That means only logical and possible options for this creation mode is available to play with. Note that sane default values was present before the user chose otherwise.
______________________________________________________________________
Point_on_line_curve.png
Point_on_line_curve.png (37.17 KiB) Viewed 1187 times
Point: here the option On line/curve was chosen. That means only logical and possible options for this creation mode is available to play with. Note that sane default values was present before the user chose otherwise.
______________________________________________________________________
Line.png
Line.png (34.2 KiB) Viewed 1187 times
Line: here the option Point-to-point was chosen. That means only logical and possible options for this creation mode is available to play with. Note that sane default values was present before the user chose otherwise. As a sidenote, there's a nifty feature here: "Line on support", which means the chosen points are on a (double)curved surface and the function draws the line the shortest distance between these points following the surface! (for REALLY advanced surface creations!)
______________________________________________________________________
Connect_curve.png
Connect_curve.png (37.31 KiB) Viewed 1187 times
Connect curve: here the option Normal/standard was chosen. That means only logical and possible options for this creation mode is available to play with. Note that sane default values was present before the user chose otherwise. Also note that the curve will not start/end anywhere else then the selected points.
______________________________________________________________________
.
I'm pretty sure we can do better than the above, but the principle holds anyway: no additional editing allowed beyond the chosen option. The opposite is true in today's FreeCAD. And for those of you who haven't got it yet: moving (out of its original position) something in CAD is called transformation (horrible word, but anyway) and always result in a new icon in the tree! I.e. one clearly see something is moved(transformed) just by looking at the tree. The very opposite of today's situation...
User avatar
Vincent B
Veteran
Posts: 4713
Joined: Sun Apr 05, 2015 9:02 am
Location: La Rochelle, France

Re: [Feature requests] Working points, lines and planes

Post by Vincent B »

You're right. Could be useful with theses choice and selection box.
The first one doesn't exist, it could be easy to write with python.
The second, Split curve (curveWb) can do it.
The 3rd, line of workfeature Wb and interpolation curve do that.
The 4th, blend curve (curveWb) do it.
But can be useful to have a Gui interface box.
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature requests] Working points, lines and planes

Post by Pauvres_honteux »

Feature request: issue #4202
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

[Feature requests] Working points, lines and planes

Post by Pauvres_honteux »

From realthunders github page:
.
I'm missing:
.
Project point on line/curve/plane/surface
Creation mode: normal to line/plane/surface.
or
Creation mode: shortest distance to curve.
or
Creation mode: along a direction to a plane/surface.

and

Create point/points on line/curve
Creation mode: select line/curve, then an already existing point on that line/curve then direction along the selected line/curve, then real/relative distance between them. If real distance would overshoot the length of the line/curve, then use the tangential/curvature continuation of the line/curve to fulfill the command.

and

Create point on plane/surface
Creation mode: select plane/surface, then an already existing point on that plane/surface then U+V which are projections of the current in work coordinate system or a another coordinate system of choice [one can have many different coordinate system in a part but only one is effective at the time]. If real distance would overshoot the length of the surface, then use the tangential/curvature continuation of the surface to fulfill the command.

and

Create point/points between two other points
Creation mode: select two already existing points and set one as master/start. Middle point = relative value 0,5 relative to the two original points. Multiple points = equal spacing relative to the two original points.

and

Create plane through a line/axis and angled with respect to a plane
Creation mode: select the rotation line/axis the plane shall pass through, then an already existing plane or a plane of a current in work coordinate system or a another coordinate system of choice as a reference. In the background: always project the line/axis on the reference plane to get the correct reference angle, then translate the newly created plane back to the line/axis. As already stated this projection and translation shall not be seen by the user.
.
For all the above the point shall of course stay connected in such a way that when one change position of the line/curve/plane/surface the point/points follows.
Last edited by Pauvres_honteux on Fri Sep 18, 2020 10:30 am, edited 1 time in total.
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature requests] Working points, lines and planes

Post by Pauvres_honteux »

Anyone with an interest in fixing these missing features?
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature requests] Working points, lines and planes

Post by Pauvres_honteux »

Instead of an annoying fixed "Task"-tab (where the user constantly must switch between tabs when selecting something from the tree) we shall have a pop up dialog containing something like this:
.
Point_line_plane_dialog_pop_up.png
Point_line_plane_dialog_pop_up.png (184.16 KiB) Viewed 839 times
User avatar
saso
Veteran
Posts: 1920
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: [Feature requests] Working points, lines and planes

Post by saso »

I agree with you on the "annoying fixed task view" and if you change the setting (Preferences -> General -> Tree view mode -> from "Combo view" to "TreeView and PropertyView") you will see that this is already sort of possible, unfortunately because of how the task view was developed in the past it is currently still not really useful the way it should be because the task view should automatically open and close when tasks are activated and closed, currently however one has to close it manually (it does automatically open) and in PartDesignWB it is at the same time also used (reused) as a sort of a "modeling wizard" so that one has to have it opened all the time if they prefer to wok this way (I actually don't, but I understand that some users can prefer it, still the way how it is implemented in the task view is IMO not the best).

TaskView.png
TaskView.png (127.41 KiB) Viewed 819 times

About the separate attachment modes for different objects however I am not sure if I can agree. Yes it is common in other cad systems to have such separate dialogs that are specific for different objects, in FreeCAD this is sort of implemented as a generic attachment (map mode) system for all the objects, yes it is different but I don't really see it as wrong or bad, it could probably have some improvements but it general it seems to be fulfilling its porpoise and actually seems to be quite powerful and extending it to have sperate support, origin and orientation definitions should make it even much more powerful :) https://forum.freecadweb.org/viewtopic. ... 58#p442009
Post Reply