LDraw.org Discussion Forums
LDCad 1.4b (win+linux) - Printable Version

+- LDraw.org Discussion Forums (https://forums.ldraw.org)
+-- Forum: LDraw Programs (https://forums.ldraw.org/forum-7.html)
+--- Forum: LDraw Editors and Viewers (https://forums.ldraw.org/forum-11.html)
+--- Thread: LDCad 1.4b (win+linux) (/thread-15371.html)

Pages: 1 2 3 4 5 6 7 8 9 10

Re: LDCad 1.4b (win+linux) - Roland Melkert - 2015-02-25

Ah that's a though one indeed. There are multiple variables in play.

I think the main problem lies in the fact angles change when the shock length changes, because it's using a non aligned hinge.

During a quick test using a mockup I think this problem needs additional selection info to help calculate the needed shock length as it's actually a side of a triangle in this case. It's like the triangle sel info while having the angles but not the lengths.

So in order to solve the whole assembly problem you first need to get the length of the shock assembly (in my example) from 150.33 to 162.4. Afterward you can rotate it towards it destination on the steering hub

see pic 1

I'm cheating a bit and just move the whole steering stuff so the shock doesn't need resizing, something you can't do your model due to other contrains, you'll have to do the math Wink but it won't matter for the following.

Next you move the 92207 part and its axles 20ldu. Set the grid to the shock ori and rotate it 10.3 deg (I have the same angle as your because I cheated with the shock length) using its natural hinge.

see pic 2

Set the grid to the new shock orientation again and change it's length to match the sell info distance (111.8 in my case so a rel y move of 1.8)

see pic 3

side note: I wish the forum auto rized pictures again Sad

Re: LDCad 1.4b (win+linux) - Philippe Hurbain - 2015-02-26

OK, I tracked down the problem, a VERY funny one Wink
Say I want to rotate something by arcsin(0.55), about 33.367. Enter that value in manual rotation field, verify the resulting rotation with selection info - perfect!
Now for more precision (???) calculate a more precise arcsin value using Windows calculator, you get a whooping 33 digits value (33.367012969231750012250966510535), copy/paste that in manual rotation value field... and... arghhl, when you verify rotation value in selection info, you get 35.07450 degrees! So it turns out that manual rotation doesn't like getting too many decimals!

Now just for the fun, enter an intermediate precision value (33.36701296923175001225096). Here the rotation almost reaches 90° (86.51408°)!!!

Hilarious, isn't it? Wink

And - Yipeee! I now have a perfect fit in my model (current state attached)

Re: LDCad 1.4b (win+linux) - Roland Melkert - 2015-02-26

Philippe Hurbain Wrote:Hilarious, isn't it? Wink
You got a weird sense of humor.

Thanks for tracking this down. Now I think about it, it's kinda logical as I'm handling the string to double conversion myself using 64 bit integers etc. So there is probably some overflow at play around the 64 bit number range.

I'll limit the input field and or try to improve the conversion code for additional precision (e.g. 128 bit).

ps: sorry I doubted your rotational skills Smile

Re: LDCad 1.4b (win+linux) - Philippe Hurbain - 2015-02-28

Roland Melkert Wrote:You got a weird sense of humor.
Indeed Wink
Quote:ps: sorry I doubted your rotational skills Smile
No problem, now completed without further problems. Again the flex part creation made wonders for string and tracks!!!

Re: LDCad 1.4b (win+linux) - Roland Melkert - 2015-02-28

Philippe Hurbain Wrote:No problem, now completed without further problems. Again the flex part creation made wonders for string and tracks!!!
No thanks,

Minor detail I downloaded the model and noticed the spring meshes are listed in the mpd content group (So LDCad does not consider them maintained LDraw code). This is because MPDCenter changed the model names but as it is not aware of the LDCad meta's it did not update the connection between the shock part and its spring sub part. As a result you will end up with duplicate spring meshes the next time you save the model after spring regeneration.

You can prevent that by changing the spring part names inside LDCad before running MPDCenter. Or update the link by hand after MPDCenter has been run look for lines like:

0 !LDCAD GENERATED [generator=LDCad 1.4b] [master=shock-06_5L-soft-2.ldr]

And update the master part to the new name "42038 - shock-06_5L-soft-2.ldr" in this case.

Re: LDCad 1.4b (win+linux) - Philippe Hurbain - 2015-02-28

Ah, got caught again with this one.... I'll update file!

Re: LDCad 1.4b Documentation - Roland Melkert - 2015-03-01

I've added a page about basic editing, I hope it's somewhat understandable as I find it somewhat difficult to describe the process. I might add a youtube clip showing the same things as described to make it more understandable later.

With this page I think the old short manual can be dropped as it offers no additional info, next I will be working on an 'advanced editing' page dealing with submodels / MPD / nesting mode and flexible parts etc.

Any comments / suggestions are welcome.

Re: LDCad 1.4b (win+linux) - Philippe Hurbain - 2015-03-01

File updated. What about a LDCad option to assist OMR compliant MPD generation? As far as I can tell, it could be as simple as a field asking for a set number when starting a new model, and prepend that set number to all files in mpd. Of course if field is left empty LDCad would fold back to current behaviour.

Re: LDCad 1.4b (win+linux) - Roland Melkert - 2015-03-01

Yes, maybe some sort of mass renaming / beautify tool (incl unoff part packing). Not sure if I will add it in 1.5 though, as its to todo list is getting bulky Smile

Re: LDCad 1.4b (win+linux) - Owen Dive - 2015-03-13

Hi Roland.

I've finally found the time to have a go with LDCad. It certainly has come a long way since I tried to break it by loading calc.ldr in the 1.0 public alpfa release!
I'm really impressed with the Relative Grid, and the Selection Info option (once I was able to find it!).

Of course, I now have a couple of suggestions.
* In the Manual Movement/Rotation boxes (and presumably in other dialogs as well), it would be nice if the Enter key was bound to the Apply button so that I didn't have to tab several times to get the button in focus or use the mouse to close the dialog.
* Somewhat similarly, the Reference/Selection properties (the one that comes up when you hit Enter with a selection) looks like the Apply button is the default action, but hitting Enter closes the dialog without applying any changes.
* In the parts bin, it would be really nice to have some visual indicator of which items are parts (that I can put into my model) and which are groups of (possibly other groups of) parts. It's can be particularly confusing when the icon for a parts group is the same as the picture of a part. I know that I can look at the status bar and if it has a part number in parentheses, then it's a part not a group, but that's a relatively large amount of mental effort (I have to look at a different part of the screen, and I have to parse the text there)
* Everything else I had has either already been brought up in either this or a previous thread, or else it's something that I'm sure is a non-issue (like a shortcut key that probably already exists). Seriously, almost every time I've thought "this program really needs Feature X", I find that Feature X is there after all - I was either looking in the wrong place, or I hadn't understood what the option did.

It should be noted that I didn't stray at all into the advanced features like flexible parts or animation.

Looking forward to what I've seen of 1.5!