Dimension a pitch circle in Tech Draw.
Forum rules
and Helpful information
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help
Also, be nice to others! Read the FreeCAD code of conduct!
Also, be nice to others! Read the FreeCAD code of conduct!
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
There are many reasons a user might end up working with newer and older versions of a program.
For me, the reason is that I have another computer at another location that has very poor internet. I have to physically bring that computer home to upgrade it, consequently it is not always running the latest software. This has never been a problem with, say word processors, photo editors, or any of the other apps that I use. One of the reasons for choosing Freecad over Onshape or a cloud based program is that it doesn't need internet.
However, any time you (not "you" personally, of course) do something to a program that could potentially have the user unknowing destroy existing files, you NEED to warn them.
I would go so far as to say that there should be a pop up warning that "This file was created by a version of the program that is not compatible with the current version. File damage may result if you continue" if/when FC detects a file created with an earlier version.
While it does appear that no one was aware of this specific issue, your development team must have been be aware that Tech Draw 0.19 was not compatible with earlier versions.
For me, the reason is that I have another computer at another location that has very poor internet. I have to physically bring that computer home to upgrade it, consequently it is not always running the latest software. This has never been a problem with, say word processors, photo editors, or any of the other apps that I use. One of the reasons for choosing Freecad over Onshape or a cloud based program is that it doesn't need internet.
However, any time you (not "you" personally, of course) do something to a program that could potentially have the user unknowing destroy existing files, you NEED to warn them.
I would go so far as to say that there should be a pop up warning that "This file was created by a version of the program that is not compatible with the current version. File damage may result if you continue" if/when FC detects a file created with an earlier version.
While it does appear that no one was aware of this specific issue, your development team must have been be aware that Tech Draw 0.19 was not compatible with earlier versions.
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
Ok... I have figured out what is happening. Should be an easy fix. Will post details later.....
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
OK....maybe this is a bit hard to explain, but the problem with how the two versions are storing the location data.
0.19 seems to be unable to correctly read the angle of rotated objects created in 0.18, therefore they not being correctly rotated when opened in 0.19. See Screenshots "original from 18" and "same file opened in 0.19". Note the section view is supposed to be rotated -90 in both shots but 0.19 is not actually rotating the view, thus the dimensions are whacked because their reference points are rotated.
The "backwards compatibility" problem is the same issue.
Screenshot 3 is the same file after saving using 0.19 then reopening in 0.18. What has happened here is that all of the element locations (x, y and rotation) are now 0, so all the views are now piled on top of each other. Also all of the dimensions are positioned to their default 0,0 locations within each view. It is possible, but difficult, to reassemble the page.
So, the problem is that 0.19 is storing the location information in some way that older versions cannot read it so everything is defaulting to (0,0).
This should be fixable!!! (I hope)
0.19 seems to be unable to correctly read the angle of rotated objects created in 0.18, therefore they not being correctly rotated when opened in 0.19. See Screenshots "original from 18" and "same file opened in 0.19". Note the section view is supposed to be rotated -90 in both shots but 0.19 is not actually rotating the view, thus the dimensions are whacked because their reference points are rotated.
The "backwards compatibility" problem is the same issue.
Screenshot 3 is the same file after saving using 0.19 then reopening in 0.18. What has happened here is that all of the element locations (x, y and rotation) are now 0, so all the views are now piled on top of each other. Also all of the dimensions are positioned to their default 0,0 locations within each view. It is possible, but difficult, to reassemble the page.
So, the problem is that 0.19 is storing the location information in some way that older versions cannot read it so everything is defaulting to (0,0).
This should be fixable!!! (I hope)
- Attachments
-
- Original0.18file.png (105.63 KiB) Viewed 1169 times
-
- SameFileOpenedin0.19.png (102.44 KiB) Viewed 1169 times
-
- SameFileAftersavingin19And reopening in18.png (95.75 KiB) Viewed 1169 times
Re: Dimension a pitch circle in Tech Draw.
Can you please create a simple as possible FreeCAD project file that demonstrates this issue and attach it here.
Regarding compatibility generally, we always intend to have backwards compatibility but forwards is impossible. If a new feature is introduce in a newer FreeCAD then the older FreeCAD can not understand it, often it will just ignore it but that depends on the details. But the newer FreeCAD should always be able to open the file made by the older FreeCAD.
If that is not the case, as seems to be the case her then it is definitely a bug that we need to look into. So please post the demo file and we will have a look into it.
Jim
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
Test file created in 0.18.16146.
All Tech Draw views were deliberately moved from their default locations because "locations" is where the problem lies.
Screenshot 1 is the original as created in 0.18. Note the rotated section view.
Screenshot 2 is the same file as opened by 0.19.22522. Note the Data sidebar indicates -90 rotation but the section view is not actually rotated and the dimensions are (0.00) because the reference points are now in line.
File was then saved (without making any changes) by 0.19 and then reopened in 0.18. (Screenshot3) All the views are piled together in the corner because 18 is now reading all the the x-y locations and the rotation value as 0.
But....if the file is now reopened in 19, the display is the same as screenshot 2, therefore the stored rotation data has not been changed and 19 can read the x-y data correctly but 18 can not. Neither version can read the rotation data correctly.
If the file is now re-saved by version 18, all the location values will actually be changed to "0".
All Tech Draw views were deliberately moved from their default locations because "locations" is where the problem lies.
Screenshot 1 is the original as created in 0.18. Note the rotated section view.
Screenshot 2 is the same file as opened by 0.19.22522. Note the Data sidebar indicates -90 rotation but the section view is not actually rotated and the dimensions are (0.00) because the reference points are now in line.
File was then saved (without making any changes) by 0.19 and then reopened in 0.18. (Screenshot3) All the views are piled together in the corner because 18 is now reading all the the x-y locations and the rotation value as 0.
But....if the file is now reopened in 19, the display is the same as screenshot 2, therefore the stored rotation data has not been changed and 19 can read the x-y data correctly but 18 can not. Neither version can read the rotation data correctly.
If the file is now re-saved by version 18, all the location values will actually be changed to "0".
- Attachments
-
- 1-TestfileOriginal.png (139.2 KiB) Viewed 1106 times
-
- 2-TestFileOpenedin19.png (131.84 KiB) Viewed 1106 times
-
- 3-TestFileReopenedin18.png (123.65 KiB) Viewed 1106 times
-
- TestFile.FCStd
- (12.9 KiB) Downloaded 41 times
Re: Dimension a pitch circle in Tech Draw.
You are talking again about going with a 0.19 model back to 0.18. I accept that you have difficulties updating one of your computers, but we shouldn't make this a general issue. The real problem is serious enough.
I remember that there were errors in the placement/rotation of secondary views which were fixed in 0.19. You may search the forum for that discussion. Uwe, did you raise this issue?
- FreeCAD had made in 0.18 an error;
- the workaround was, to enter wrong values for certain properties to compensate the error;
- the error is now corrected, which means that opening a file with the erroneous values shows them from the current point of view correctly, i.e. with the errors.
I see these use cases for such files:
1) open an 0.19 model in 0.18
2) open an early 0.19 model in current 0.19.
3) open an 0.18 model in 0.19
Regarding the fact that wandererfan can currently not participate in TechDraw development at his well known pace, I propose that we don't even consider fixing the use cases 1 und 2:
Thinking about use case 3 reminds me of the situation when we made the transition from 0.16 to 0.17: there was a migration algorithm implemented which almost never worked, and there was a separate migration program in the make which was never finished. I was expecting heaviest user complaints, but nothing happened. We had to explain over and over again what a body is and what should be inside (just like today) and sometimes we had to recommend to delete all features and keep only the sketches for rebuilding a model.
And that was it.
With a heavy heart I would therefore recommend the following solution: If somebody is eager to fix this - good! But if not, we could well leave it as is, but we should then of course mention it in the release notes or in the TechDraw wiki or whereever. It shouldn't be at all a show stopper for 0.19.
I remember that there were errors in the placement/rotation of secondary views which were fixed in 0.19. You may search the forum for that discussion. Uwe, did you raise this issue?
So here we have this situation:uwestoehr wrote: pinged by pinger macro
- FreeCAD had made in 0.18 an error;
- the workaround was, to enter wrong values for certain properties to compensate the error;
- the error is now corrected, which means that opening a file with the erroneous values shows them from the current point of view correctly, i.e. with the errors.
I see these use cases for such files:
1) open an 0.19 model in 0.18
2) open an early 0.19 model in current 0.19.
3) open an 0.18 model in 0.19
Regarding the fact that wandererfan can currently not participate in TechDraw development at his well known pace, I propose that we don't even consider fixing the use cases 1 und 2:
Thinking about use case 3 reminds me of the situation when we made the transition from 0.16 to 0.17: there was a migration algorithm implemented which almost never worked, and there was a separate migration program in the make which was never finished. I was expecting heaviest user complaints, but nothing happened. We had to explain over and over again what a body is and what should be inside (just like today) and sometimes we had to recommend to delete all features and keep only the sketches for rebuilding a model.
And that was it.
With a heavy heart I would therefore recommend the following solution: If somebody is eager to fix this - good! But if not, we could well leave it as is, but we should then of course mention it in the release notes or in the TechDraw wiki or whereever. It shouldn't be at all a show stopper for 0.19.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
Yes i am describing going from 0.19 back to 0.18 because you asked me to describe the whole problem. That is the sequence which could cause inadvertent file damage. I understand there is no will to fix it so it is not going to be looked at.
That being the case, you really MUST issue a warning that opening a 0.19 Tech Draw file in an earlier version of Freecad will likely result in file damage.
Case 3, however, should be fixed before 0.19 can be considered stable. Users should be able to expect that upgrading Freecad will not corrupt their existing files.
I have only been using Freecad for a year or two.
When 0.19 came out, I tried it, found that (in spite of the hoopla about how much better it was), it corrupted my existing files so I went back to 0.18, waiting for the bugs to be worked out if it. I afraid I cannot be any help in that regard, I know nothing about programming.
That being the case, you really MUST issue a warning that opening a 0.19 Tech Draw file in an earlier version of Freecad will likely result in file damage.
Case 3, however, should be fixed before 0.19 can be considered stable. Users should be able to expect that upgrading Freecad will not corrupt their existing files.
I have only been using Freecad for a year or two.
When 0.19 came out, I tried it, found that (in spite of the hoopla about how much better it was), it corrupted my existing files so I went back to 0.18, waiting for the bugs to be worked out if it. I afraid I cannot be any help in that regard, I know nothing about programming.
Re: Dimension a pitch circle in Tech Draw.
I'm sorry that my recommendation must be at least partially disappointing, but I thank you anyway for pointing it out and providing the testfile.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
-
- Posts: 172
- Joined: Wed Jan 15, 2020 8:39 pm
Re: Dimension a pitch circle in Tech Draw.
Yes it is disappointing in a way that the backwards compatibility will not be fixed. While I don't understand the details of "Freecad 18 made and error, then a workaround,etc etc", it does sound like you would be trying to put a band aid in a patch to fix it, so I do understand why it's a no go.
Case #3, on the other hand, really must be looked at. It shouldn't be so formidable as it is specific to the rotation angle data only. I can't believe it would be too difficult to put in a patch of some sort so that 0.19 is able to correctly interpret the rotation angle from older files.
I did a little more testing.
If the -90 value is changed to 0, the view is oriented correctly. This also works for the section view in the earlier, more complex file. For the front view rotated 30 to act as a projected view, if the 30 is changed to 60, the view is correct.
Is it possible that 0.18 is using degree values from horizontal whereas 0.19 is using values from vertical??? (Or visa versa?)
Case #3, on the other hand, really must be looked at. It shouldn't be so formidable as it is specific to the rotation angle data only. I can't believe it would be too difficult to put in a patch of some sort so that 0.19 is able to correctly interpret the rotation angle from older files.
I did a little more testing.
If the -90 value is changed to 0, the view is oriented correctly. This also works for the section view in the earlier, more complex file. For the front view rotated 30 to act as a projected view, if the 30 is changed to 60, the view is correct.
Is it possible that 0.18 is using degree values from horizontal whereas 0.19 is using values from vertical??? (Or visa versa?)
Re: Dimension a pitch circle in Tech Draw.
Let me point out that I'm not against the fix in 0.18. If somebody does it - good. I was looking at the whole developer situation, where the main developer of TechDraw had to step back from most of his activities.
We have to face the situation that 0.18 is quite old. I guess that in 9 of 10 topics where 0.18 is used, also contain the recommendation to upgrade. And that's what I would really recommend to you: find a way to upgrade your 0.18; put it on a memory stick, copy it to a portable harddisc, burn it on a CD, borrow a wlan stick and connect your computer via your smartphone and let it consume half of your monthly bandwidth, ...
We have to face the situation that 0.18 is quite old. I guess that in 9 of 10 topics where 0.18 is used, also contain the recommendation to upgrade. And that's what I would really recommend to you: find a way to upgrade your 0.18; put it on a memory stick, copy it to a portable harddisc, burn it on a CD, borrow a wlan stick and connect your computer via your smartphone and let it consume half of your monthly bandwidth, ...
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.