LDCad 1.4b (win+linux)


LDCad 1.4b (win+linux)
#1
Due to a very nasty bug I'm releasing the 1.4b version only 4 days after 1.4a, it's a new record Smile

This only difference in this version to the previous one are two bugfixes related to path content.

You'll find the update here:

http://www.melkert.net/LDCad/download

If you don't want to do a complete reinstall (e.g. due custom modified bin/gui files) you can also upgrade to 1.4b by getting the archive version and manually coping the main executable inside it over the 1.4a one at your install location.

Hopefully this version will last longer.
Reply
Re: LDCad 1.4b (win+linux)
#2
User interface wishes...
- I think that when you change filter field the parts scroll bar should be reset to top (often wonder why I don't see the part I look for because I begin to scroll down...)
- When I switch to another program window and come back to LDCad, the 1st click activates LDCad window but doesn't do the action (eg. when clicking on a toolbar button). This can be considered a design choice, but next clicks on the same button are not active either unless you move mouse.
- I wish I had a "move selection to current step" in reorganize menu
...of course these are only wishes Wink
(edit) I also have issues figuring in advance what will be the rotation performed by arrow keys / pgup pgdn when placing a part. I think it would be easier if orientation was fixed (eg. left-right aways rotate around world Y axis), regardless of view direction. I know I can toggle auto editing plane, but it's too convenient with move or rotate tools...
Reply
Re: LDCad 1.4b (win+linux)
#3
You are right the filter should cause a scroll reset, I'll change that for the next version.

The program switch protection is in place as it caused problems (more so in Linux) not doing so. I'll see if I can improve it so wont' need to wait for a mouse move.

"move selection to current step" is already in the reorganize menu, the first item, it's called "move to step". It opens a submenu listing all steps (which you can pin if you have multiple selections to move). A follow up click on any of those step numbers will move the selection there.

The new part rotation currently tries to map the keys in releation to the view direction, so up/down is always horizontal rotation, left/right vertical and pgup/pgdn 'clock' rotation. But this is not always perfect as it depends on the parts orientation and camera etc. I do agree it's not perfect though, as I too sometimes need to do a couple of wrong rotations before getting it right. The home key might help as it resets the part rotation to the current grid orientation.

I'll see if I can improve and or add an option like you described to this feature.
Reply
Re: LDCad 1.4b (win+linux)
#4
Quote:"move selection to current step" is already in the reorganize menu, the first item, it's called "move to step". It opens a submenu listing all steps (which you can pin if you have multiple selections to move). A follow up click on any of those step numbers will move the selection there.
Yes, I use that. What I meant is really "current" step, I find it convenient to select parts, move to the step where they should be and then place parts in current step. This offer visual feedback that a single step number doesn't provide. Now I am aware that this works nicely only to move parts to a later step, so it may not be such a good idea...
(edit) maybe the solution could be - with current move to step implementation - to scroll and highlight current step in the list...
Reply
Re: LDCad 1.4b (win+linux)
#5
I completely read over the 'current step' part, sorry.

I'll add the option to the reorganize menu as it's a simple variant of the other moves.
I also like your idea of highlighting the current step in the step list menu, so I'll add that too.

Thanks.
Reply
LDCad 1.4b Documentation
#6
Hi all,

At the moment I haven't got the time to make some real progress with 1.5, so I decided to put some time into setting up better documentation as I can do that in smaller blocks of time.

It's a work in progress but I've rewritten the getting started page and created a general gui introduction page as the first part of a full manual which will replace the old quick manual in time.

Over the next couple of days (weeks) I'll be adding more and more pages but I was wondering if people could proof read along and or give me some pointers on the content etc.

Also if anyone would like to see some specific subjects / tasks documented let me know.
Reply
Re: LDCad 1.4b Documentation
#8
I've added (the start of) the FAQ page

Feel free to post additional questions you like to see answered on that page here.
Reply
Re: LDCad 1.4b Documentation
#9
You are doing a very useful job here Wink

A few typos...
in Getting started page:
- Windows LDraw AIOI Probalby the easist -> Probably the easiest
In GUI intro:
- (icons) Go to the fist building step of the current model/li> (/li> at the end, same on few following lines)
- (parts bin) ether links to groups or things -> either links to groups or things
- (parts bin) In order to get the hang of the part bin it self -> In order to get the hang of the part bin itself
- (editing) It will load the LDCad mascot model you'll probably seen -> It will load the LDCad mascot model you've probably seen
- (editing)therefore to big a subject to do in this general GUI introduction. It will off course -> therefore too big a subject to do in this general GUI introduction. It will of course

About icons: Manual selection move/rotation/center move, maybe numerical instead of manual would be better?

In FAQ:
- (red crosses) or it's not available readable at all -> or it's not available or readable at all (???)
- (red crosses) would be to reset the (main.cfg) LDCad configuration -> would be to delete the (main.cfg) LDCad configuration (???)
- (red crosses) re-asking of the LDraw library at it's next start up -> re-asking of the LDraw library at its next start up
- Where does LDCad keep it's configuration files? -> Where does LDCad keep its configuration files? (I remember the early days of my website, a guy contacted me about the confusion I made often between "it's" and "its" Wink - there are a few more instances of this one later on in faq.
Reply
Re: LDCad 1.4b Documentation
#10
Thanks Philippe, I've fixed your findings.

Pretty obvious the thing about it's and its but somehow I almost always automatically type it's. I used to do the same thing with your and you're Smile
Reply
Re: LDCad 1.4b Documentation
#62
Could you please add the word "duplicate" somewhere in INS - "Add a new part using the working part or clone the current selection if any".

Thanks, w.
LEGO ergo sum
Reply
Re: LDCad 1.4b Documentation
#63
Willy Tschager Wrote:Could you please add the word "duplicate" somewhere in INS - "Add a new part using the working part or clone the current selection if any".
Done, you are right most people will probably search for 'duplicate' instead of 'clone' when trying to find that specific function Smile
Reply
Re: LDCad 1.4b Documentation
#37
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.
Reply
Re: LDCad 1.4b Documentation
#50
Found a bit of time for some more reading... Mainly trivial typos but... (as I am not a native English speaker either, I can be wrong sometimes... or I may have let things get through!)

- In Bins preparation, shouldn't "(e.g. Technic of Creative)" be rather "(e.g. Technic or Creator)"?

- End of Camera control: " it is therefor possible to set rotation control to the more a beginner friendly spin method " -> "it is therefore possible to set rotation control to the more beginner friendly spin method" and "But please don't give up to quickly" -> "But please don't give up too quickly"

- Start of Editing Compass: "ignored the briefly discusses compass in the left bottom corner." -> "ignored the briefly discussed compass in the left bottom corner." . Later on: "as a result of the grid using to large a step." -> "as a result of the grid using too large a step.". At the end: "and is therefor one of the most important things during editing." -> "and is therefore one of the most important things during editing."

- Building using parts snapping: "You might wonder way I wasted your time" -> "You might wonder why I wasted your time". Then "is set to manual (MEP) while part editing is enabled" -> "is set to manual (MEP) while part snapping is enabled" (I guess?). "as it large influence how LDCad tries to 'guess' part " -> "as it has a large influence on how LDCad tries to 'guess' part" (I guess too?). "While adding bricks you willt need to rotate parts" -> "While adding bricks you will need to rotate parts". "(as long things are at 90 deg angels." -> "(as long as things are at 90 deg angles).". " select the first angles brick again." -> "select the first angled brick again." "being it's rectangular in relation to the angles brick." -> "being it's rectangular in relation to the angled brick."

- Conclusion: "get more and more use to things" -> "get more and more used to things". Then "most out of the LDraw format. Things step editing, using submodels (MPD) and flexible parts." -> most out of the LDraw format, like step editing, using submodels (MPD) and flexible parts." (?)
Reply
Re: LDCad 1.4b Documentation
#52
Thanks Philo,

I've applied all your changes and also added a short GUI template section to keep you busy Smile
Reply
Re: LDCad 1.4b Documentation
#48
I've added a technical section which, over time, will contain info about all configuration files and LDCad specific LDraw meta's.

Starting with the color bin configuration files.

I also changed the general layout of the site and merged / split / moved some content around.

If anyone would like to see a particular config file or meta explained before the others let me know as it could take awhile for me to document everything Smile
Reply
Re: LDCad 1.4b Documentation
#49
Found some time to finish the technical info about

part bin configuration files

It documents everything about the *.pbg files including things never used in the default part bin groups. Things which as a result of that might not have been fully tested yet.
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#53
I've finished the technical documentation (for now) by adding info about:

donor and template files

LDCad meta lines

shadow library

The meta information includes all meta I've 'invented' for LDCad specific things over the years.

This includes the part snapping format used in the shadow library so if anyone wants to take a go on adding snap information to parts let me know Smile
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#54
OK, I bit the bullet and tried to make/modify a few (attached).
- Creation of connectivity for 30374 Bar 4L Light Sabre Blade, 10050 Minifig Sword Uruk-Hai and 10053 Minifig Sword Small with Curved Blade (Bars with free ends, one end blocked, 2 ends blocked)
- Added top stud connectivity to 3820 minifig hand and 92244s01.dat Friends arm subpart
- Replaced inherited connectivity to 41669 Technic Tooth 1 x 3 with Axlehole (offset of axle hole primitive caused a 2 ldu offset of part when placed with a coarse grid, as reported here)
- Corrected axle connectivity of 11947 Technic Panel Fairing Smooth #22. Axle is blocked by a small ridge in the part, so "extension of axle" present in previous connectivity file was wrong. Removing it also cured the offset problem also mentionned here though I don't understand why it caused this problem.
- Created connectivity for unofficiel 4429 Figure Flask with Handle (stud tubes on bottom, tilted bars of handle).

Things that proved a bit harder than I initially expected:
- Restarting LDCad to be able to test a new definition is a bit painful. Maybe a "clear cache" option to force reload? (useless of course if reload time would be almost as long as restarting completely)
- I initially expected to be able to derive things more or less directly from LDraw part source, but connectivity cylinder extend at the opposite of LDraw cylinder, and orientation matrix needs to be normalized, both issues making things more difficult (especially the first one, annoying for a "directionnally challenged" guy like me Wink - What about giving the possibility to specify a negative lenth to compensate?


Attached Files
.zip   LDCad conns.zip (Size: 2.53 KB / Downloads: 0)
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#55
Thanks I'll add them to the default csl.

did notice the minifig hand (3820) stud being a bit off though Smile, it should be:

Code:
0 !LDCAD SNAP_CYL [ID=studC] [gender=M] [caps=one] [secs=R 6 7.35] [pos=0 -0.0005 -9.6816] [ori=1 0 0 0 0.9681 -0.2504 0 0.2504 0.9681]


Philippe Hurbain Wrote:Things that proved a bit harder than I initially expected:
- Restarting LDCad to be able to test a new definition is a bit painful. Maybe a "clear cache" option to force reload? (useless of course if reload time would be almost as long as restarting completely)

Yes, I usually work in batches minimizing the need to restart, but with the more complicated parts now left it becomes a problem. This is the main reason I'm working on file reloading when changes are detected for LDraw files (and probably most of the other files like part bin groups etc).

Philippe Hurbain Wrote:- I initially expected to be able to derive things more or less directly from LDraw part source, but connectivity cylinder extend at the opposite of LDraw cylinder, and orientation matrix needs to be normalized, both issues making things more difficult (especially the first one, annoying for a "directionnally challenged" guy like me Wink - What about giving the possibility to specify a negative lenth to compensate?

I haven't had to do much normalizing so far but with the more complicated parts left without info this too becomes a time bottleneck. For this reason 1.5 will be able to edit the snap info inside the editor itself so you can use the normal editing tools and some new ones (like normalize) and more importantly see what you are doing Smile.

Normalizing the matrix isn't too hard though just tread the 9 ori numbers like 3 vectors and normalize those.
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#58
An attempt for adding connectivity to 9V train tracks... Bottom tubes connectivity of switch points not implemented.
I used oversized connectivity volumes to help snapping from a distance. Perhaps even not oversized enough!


Attached Files
.zip   9Vtrackconnectivity.zip (Size: 1.67 KB / Downloads: 0)
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#59
Philippe Hurbain Wrote:An attempt for adding connectivity to 9V train tracks... Bottom tubes connectivity of switch points not implemented. I used oversized connectivity volumes to help snapping from a distance. Perhaps even not oversized enough!

Minor bug: 2865s03.dat anti stud info uses a swapped x/z grid.

As for the over sized bounding box. LDCad does bb intersection tests on those to find the closest so it might help if you use a cylinder bounding instead of a box.

But like you already figured it won't snap if its too far away even if its the only thing. This is mainly to limit the number of tests (preventing to test e.g. whole datsvile while adding a single brick). Personally I also like it to fallback to grid placement when its out of reach in order to minimize having to turn snapping on and off while building second structures etc. I could add an option to change this behavior though.

Anyway having very large bounding boxes isn't 'misuse' as its the goal of the bounding property. So you could even use a cylinder with a radius of half the length of the rail Smile. Also the male and female info doesn't need to have the same dimensions ether just the same (rest) orientation.

1.5 introduces the shape property for SNAP_GEN meta's which will need to be the 'tight' bounding box and can optionally be used for matching, it will default to 'not used' though.

Again thanks for the tests/reports Philo.
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#60
Thanks for your comments about switch points , I'll have a closer look when I am back home (travelling now...)
Just found a little issue: If you create a path flex part big enough (eg. my VEX track part), bounding box is large enough to prevent reaching the size handles when in 2D mode (you move the whole control point instead). And (an old one but I think I never told you), the size of the control point thing is imho too small and too thin, often quite difficult to select it...
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#61
Philippe Hurbain Wrote:Just found a little issue: If you create a path flex part big enough (eg. my VEX track part), bounding box is large enough to prevent reaching the size handles when in 2D mode (you move the whole control point instead). And (an old one but I think I never told you), the size of the control point thing is imho too small and too thin, often quite difficult to select it...
Yes there are some known issues while working with (very) large (flexible) parts.

Maybe I should scale the control points etc like the editing pin does. Same goes for the minimal distance of the control point it probably should be base upon the segment length or something.

I'll put it on my Beta 2 todo list Smile
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#75
Philippe Hurbain Wrote:If you create a path flex part big enough (eg. my VEX track part), bounding box is large enough to prevent reaching the size handles when in 2D mode (you move the whole control point instead).
Sorry just noticed this part while working through the open bug/minor tweaks of this thread.

The editing rectangle can be hidden using 'p' just like in 3D mode, also the rectangle will be ignored if you're holding down ctrl while clicking the control point.
Reply
Re: LDCad 1.4b Documentation incl (snap) metas
#76
Good to know (I should have thought of "p" since I use it often in 3D!)
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#77
I've been working on the advanced editing documentation and just finished describing working with pneumatic hoses.

http://www.melkert.net/LDCad/docs/advEdit

More for this page is pending but I was wondering if this is somewhat understandable as I found it quite difficult to explain. So while I continue working on the shocks and grouping text please let me know your thoughts so I can adjust things if needed.

edit: I've also completed/uploaded the shock (spring) chapter.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#78
Seems clear enough for me... but maybe I no longer qualify as a newbie? Wink
I learnt something in pneumatic hose section: the possibility to change control point style from Bezier to circle. Awesome for ropes!
Dynamic/rubber bands: Maybe you should tell what to do when you add circles in the wrong order? Talk about non-planar belts?
Pneumatic hose: Maybe more images at the beginning? perhaps you should number them to be able to refer to them easily in text.
Placement of shock absorber end: discussion of distance measurement and manual movement is interesting, but once the shock is properly oriented you can simply rely on part snapping of end on pin!

Typos, etc...
- over sized -> oversized (beginning of Submodels)
- them self -> themselves (beg. of nested)
- e..g a pneumatic hose -> e.g. a pneumatic hose/ dynamic parts of ether -> dynamic parts of either / when ever you drag -> whenever you drag (beg. of dynamic)
- "To do this you need to switch to the nested editing mode this is needed as we want to manipulate the band it self and not it's general location. " -> "To do this you need to switch to the nested editing mode. This is needed as we want to manipulate the band itself and not its general location. "
- "Thing rectangle can be used to move and rotate the selection much like the editing pin does." -> "This rectangle can be used to move and rotate the selection much like the editing pin does." (pneumatic hose)
-"Just compensate this by changing the grid so the pin points towards you again." Isn't it the viewpoint that we need to change? (shock)
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#79
Thanks for the corrections Philo.

Philippe Hurbain Wrote:I learnt something in pneumatic hose section: the possibility to change control point style from Bezier to circle. Awesome for ropes!
I added it as I thought not many people would realize bands and hoses use the exact same generator guess I was right Smile I'm also thinking about adding more kinds of points in the future e.g a spool point which automatically loops e.g. a rope n times around a radius to serve as the rope origin in cranes etc.


Philippe Hurbain Wrote:Dynamic/rubber bands: Maybe you should tell what to do when you add circles in the wrong order? Talk about non-planar belts?
I wanted to keep it simple but still give people the tools to do 99% of their models. Maybe I should add a new page for the advanced advanced stuff, e.g. a 'tips and tricks' page?


Philippe Hurbain Wrote:Pneumatic hose: Maybe more images at the beginning? perhaps you should number them to be able to refer to them easily in text.
Which step should have a picture, imho I gave all important stages a picture.


Philippe Hurbain Wrote:Placement of shock absorber end: discussion of distance measurement and manual movement is interesting, but once the shock is properly oriented you can simply rely on part snapping of end on pin!
You are right, did not realize this. I didn't even realize using the bottom pin before working halfway through the selection info method Smile. I will add it.


Philippe Hurbain Wrote:"Just compensate this by changing the grid so the pin points towards you again." Isn't it the viewpoint that we need to change? (shock)
The problem I tried to explain is e.g. 'top view' of the relative grid is at a different side then were it was in absolute space so to have the (visual) same grid you need to set it to e.g. sides. I'll try rewriting it.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#82
Quote:I added it as I thought not many people would realize bands and hoses use the exact same generator guess I was right Smile
Also very useful to add natural looking slack to tank treads! The spool control is a very good idea too.

Quote:Maybe I should add a new page for the advanced advanced stuff, e.g. a 'tips and tricks' page?
Maybe later yes. So many things to cover...

Quote:Which step should have a picture, imho I gave all important stages a picture.
After thinking more, maybe you could simply add a link to your pneumatic hose video.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#85
Speaking of flexible things, do you think it would be possible to extend the mechanism for sheets (canvas, etc...)? Implementing something for ruled surfaces would already be a giant step forward...
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#86
Philippe Hurbain Wrote:Speaking of flexible things, do you think it would be possible to extend the mechanism for sheets (canvas, etc...)? Implementing something for ruled surfaces would already be a giant step forward...
Programming wise it indeed wouldn't be a big deal as it boils down to a subclass of the generated parts managing stuff.

Also generated stickers/cloths is something on my long term list but I'm not sure how to let users control the shape in an easy way. Only thing I've come up with so far is a grid of linked control points so when you move one it will drag others deforming the mesh. But I'm not sure this would be very handy in reality.

Maybe I'll try something in 1.6 depending on the time and impact of the already planned features for that version (mostly animation/scripting/macro's).
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#80
Nice document, Roland. I was almost perfect 'testman' because I did not work with shock absorbers etc. before. So I followed all your examples and I may confirm they all are well understandable, I was able to learn everything you mention there. And I even learned some new tricks with Nested mode.

The only point the text was unclear to me was near the beginning of 'Nested editing' chapter where you refer to 'Insert into'. That confused me a little. At first, it's called 'Change insertion target' in 1.5Alpha3 (maybe you describe older version. 1.4 ?). And the trick with RMB at session panel was surprising for me so much that it took me some time to find that menu. Another confusing point is that a hot-key for that is 'n', same as for starting the nested mode. I know there cannot be a conflict because 'Change insertion target' makes sense only in the nested mode but that's clear AFTER one understands the problem, not at the learning time Smile

Also, I believe it would be easier to understand if one can simply make a selection and open a menu with all submodels to choose where to put it, comparing to the 'put to current level' workflow. BTW, what's 'level' here and why it is not written as 'submodel'?

The example with shock absorber reminded me another idea: I also found, same as Philippe did, that one can use part snapping instead of setting the absorber length in the menu. And so the generic idea: wouldn't be usable if one can not only move but also rotate the new part or selection in LDCAD with part snapping turned on? Just an idea - I do not have details solved yet (how exactly it should behave, in all which cases this would be useful etc.)
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#81
Milan Vančura Wrote:Nice document, Roland. I was almost perfect 'testman' because I did not work with shock absorbers etc. before. So I followed all your examples and I may confirm they all are well understandable, I was able to learn everything you mention there. And I even learned some new tricks with Nested mode.
Good to know thanks.

Milan Vančura Wrote:The only point the text was unclear to me was near the beginning of 'Nested editing' chapter where you refer to 'Insert into'. That confused me a little. At first, it's called 'Change insertion target' in 1.5Alpha3 (maybe you describe older version. 1.4 ?). And the trick with RMB at session panel was surprising for me so much that it took me some time to find that menu. Another confusing point is that a hot-key for that is 'n', same as for starting the nested mode. I know there cannot be a conflict because 'Change insertion target' makes sense only in the nested mode but that's clear AFTER one understands the problem, not at the learning time Smile
The 'insert into' references to the text on the zoomed session panel, the text you mention is the item in the menu which indeed does the same. But you are right all those different names (submodel, subfile, level, insert into, etc) can be very confusing I'll try to smooth them out in both the documentation and program it self. Only difference you should know about is the one between subfile and submodel though. Basically submodel is a subset of subfile as subfile is the general name of any item inside a mpd (or the single thing in a ldr) which can be a model or part etc.

Milan Vančura Wrote:Also, I believe it would be easier to understand if one can simply make a selection and open a menu with all submodels to choose where to put it, comparing to the 'put to current level' workflow. BTW, what's 'level' here and why it is not written as 'submodel'?
This used to be possible in an earlier version, but I dropped it because it caused some logic and potential rounding problems. The thing is you don't actually select a model you select a branch which leads to a model. This is especially important when a model is used multiple times in the main model. Hope that's somewhat understandable Smile

Milan Vančura Wrote:The example with shock absorber reminded me another idea: I also found, same as Philippe did, that one can use part snapping instead of setting the absorber length in the menu. And so the generic idea: wouldn't be usable if one can not only move but also rotate the new part or selection in LDCAD with part snapping turned on? Just an idea - I do not have details solved yet (how exactly it should behave, in all which cases this would be useful etc.)
You can rotate parts in 90 deg steps (45 if you hold down ctrl) while dragging them using the arrow and pageup/down keys. But to get it perfectly to align in any situation its best to set the relative grid as it forces the exact mufti digit base rotation. Or do you mean automatic alignment through part snapping when e.g. placing a 2x4 brick on a 4x12 plate while the plate and new part are not aligned rotation wise? This is something I have in the pipe line for the next next version together with occupied connection tracking.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#83
Milan Vančura Wrote:The only point the text was unclear to me was near the beginning of 'Nested editing' chapter where you refer to 'Insert into'. That confused me a little. At first, it's called 'Change insertion target'

...

And the trick with RMB at session panel...

Mea culpa. Your documentation says nothing about RMB, it describes clearly how to click (LMB) on "Insert into" text. And there is also a help in LDCad itself, at status line. I simply overlooked all that.

On the other hand, it means your documentation is even better, as I was able to understand it and do all examples at 2am Smile

This also reminds me the font of te status line is so huge that many texts cannot fit there.

Milan Vančura Wrote:Another confusing point is that a hot-key for that is 'n', same as for starting the nested mode.

However, this is still true, even at 4pm Smile Esp. there is no visible indication of the current mode (one must place a mouse cursor over session panel). Now I understand why strange parts appeared in some submodels in my past editing sessions: I thought I entered Nested mode but, instead, I was already there and the same hotkey ('n') silently changed the current target.

Roland Melkert Wrote:But you are right all those different names (submodel, subfile, level, insert into, etc) can be very confusing I'll try to smooth them out in both the documentation and program it self.
Thanks! The simpler the better.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#87
Milan Vančura Wrote:However, this is still true, even at 4pm Smile Esp. there is no visible indication of the current mode (one must place a mouse cursor over session panel). Now I understand why strange parts appeared in some submodels in my past editing sessions: I thought I entered Nested mode but, instead, I was already there and the same hotkey ('n') silently changed the current target.
I'll add a nag message (dialog with the "don't ask again' option) so you know you are changing the 'insert to' model.

Also some visual indication to show you're in nested mode will be better indeed, maybe some icon behind the filename or something. I'll look into it.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#84
Roland Melkert Wrote:Or do you mean automatic alignment through part snapping when e.g. placing a 2x4 brick on a 4x12 plate while the plate and new part are not aligned rotation wise? This is something I have in the pipe line for the next next version together with occupied connection tracking.

Yes, something like that. It's a volatile idea only, now. As you have part snapping while you move the part (when using mouse) it might be useful to have the same for a part rotation: rotate the part, rotate, rotate until it snaps.

Thinking about it more now, this feature will be useful alone (for Pythagorean triples or for a part alignment as you described). But if two movements were allowed at the same time it adds even more use cases... Imagine dragging the black end of the shock absorber causing the absorber both rotating and stretching at the same time - following your the mouse cursor - and snapping when it 'meets' the pin. Or another usage: an interactive solving a triangular situation using a similar method - no computing... GUI for two moving parts/groups at once is a challenge, I know. But I believe it's doable and I already have ideas how to make it simple to use.

But stop now. You asked for opinions about your new documentation of this version - not dreams for the next-next one Smile
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#88
Very impressive stuff there.
I have to try this out some time, though I am not yet very comfortable with the controls in LDCad, because I am so used to MLCad.
I'd probably "cheat" and create most of the model in MLCad and then add hoses and advanced stuff in LDCad.
Jaco van der Molen
lpub.binarybricks.nl
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#89
Quote:I'd probably "cheat" and create most of the model in MLCad and then add hoses and advanced stuff in LDCad.
You're going to lose something, LDCad is such a pleasure to use Wink - granted, I never liked MLCad...
And of course the best tool is the one you know well!
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#90
Philippe Hurbain Wrote:You're going to lose something, LDCad is such a pleasure to use Wink

Exactly. Roland makes a great job here.

In fact, with the Source window (LDCad 1.5 Alpha), I know about only two or three big features missing in LDCad comparing to MLCAD and SR3D Builder. On the other hand, it offers several features more than those two editors. Much more - so the result score is highly positive, from LDCad point of view Smile

For those who are interested these are those three missing features - as I see it:

1. to be able to modify LDraw parts as MLCAD knows - but this is questionable, doesn't it make better sense to use a special tool for that? My opinion is that only a part of it is needed - what's the next point:

2. to be able to edit snapping data comfortably - directly from the editor, visually

and my another (big) wish:

3. to know the basics of physics or model logic - like SR3D Builder knew: to be able to bend a hinge including parts snapped to it, or to be able to turn gears if (and only if!) they are in the correct position for that. This is great feature not only for advanced editing but also for model checking (that everything fits at correct positions).

The unique features of LDCad, are, from my POV:

Organizational ones: it is a living project with very active author, the author promised making LDCad open-source if he cannot spend enough time on it (so the project does not die as both MLCAD and SR3Dbuilder did)

Technical ones: it is multiplatform, it is FAST even on my Thinkpad X61s, it is highly configurable what saves my time a lot, it knows to work with instructions steps very well, it does not mess up the model file even if there are comments from other SW like LPub, it knows to work with belts, strings etc. directly from the editor, it contains a source window for more precise/advanced editation, it knows part snapping, it knows to work with submodels really well - including advanced methods not seen in any other editor...

And I'm sure I forgot something. The short summary is: it's so comfortable and fast it allows me to sketch my ideas and models for (real) LEGO models exhibitions, even on my ways with my small and old laptop. And I can do that fast and comfortably so I can concentrate on my ideas and not on technical limitations of the editor.

Again, Roland makes a great job. Thank you, Roland!
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#91
Thanks for those very kind words Milan,

Milan Vančura Wrote:1. to be able to modify LDraw parts as MLCAD knows - but this is questionable, doesn't it make better sense to use a special tool for that? My opinion is that only a part of it is needed - what's the next point:
I think e.g. LDPartEditor is indeed much better suited for this. I did consider adding some part reviewing tools in the 'view' mode though.

Milan Vančura Wrote:2. to be able to edit snapping data comfortably - directly from the editor, visually
This is actually pending for 1.5 as I need it myself to continue adding info to the official parts more efficiently.

Milan Vančura Wrote:3. to know the basics of physics or model logic - like SR3D Builder knew: to be able to bend a hinge including parts snapped to it, or to be able to turn gears if (and only if!) they are in the correct position for that. This is great feature not only for advanced editing but also for model checking (that everything fits at correct positions).
This is a very complicated feature and forces some restrictions upon the model (probably the reason SR3D doesn't like overlapping parts or submodels). My current goal is to allow this through scripting (plugins) but I don't know if it ever will be possible to write an auto solver that way without forcing restrictions onto the model's construction.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#93
Hi Roland.

I've finally found time to go through the documentation you've written. I have a few suggested corrections, mainly because English is a shit of a language:
* "(the file has been upgraded to mpd the second you added a second model to it)": suggest "the moment you added...", avoiding two different uses of the word second in quick succession.
* "The only downside of nested editing is you loose control over the submodel references themselves": 'loose' is the opposite of tight. You want 'lose', which is the opposite of gain.
* "you would like to work with a submodel as a whole while retaining the 'leave' behavior": 'leaf' is the singular of leaves. The next sentence also contains 'leave' when you mean 'leaf'.
* "All dynamic parts are managed in a dedicated subfile (like submodel's)": No apostrophe for the plural 'submodels'.
* "don't worry about it being to small or to large": "too small or too large".
* "Currently the rubber band exists out a single circular 'guidance' point": suggest "rubber band consists of a..."
* "To do this you need to first select the current circle this however is currently a problem as its center is obstructed by the wheel it self": suggest "current circle. However, this is...". Also, "it self" -> "itself".
* "lets use this situation to introduce the part hiding feature": Capital Lets to start the sentence.
* "Once you done that": "Once you have done that", or "Once you've done that".
* "If you want to insert a circle between two existing ones be sure to select the one you want it to follow is selected when you using 'ins' to add the new one."
* "always be inserted behind the selected one": suggest 'after' instead of 'behind'. The difference is subtle, but I think 'after' reads better.
* "That's it your band is ready to inspect it in its neutral state switch back to normal editing": suggest "That's it! Your band... neutral state. Switch..."
* "While the shock is now in line with the target pin, it doesn't connect to it as it's currently to long": too long
* "lets (also) try this the non snapping way": you want "let's" here - it's a contraction of 'let us'.

Despite the large list, the page is generally easy to read - mostly they're just nitpicks. There are also undoubtedly some things I missed.

Owen.
Reply
Re: LDCad 1.4b Documentation (hoses etc)
#94
Owen Dive Wrote:Despite the large list, the page is generally easy to read - mostly they're just nitpicks. There are also undoubtedly some things I missed.
Thanks Owen, I'll apply these tweaks when I start working on the groups chapter.
Reply
Re: LDCad 1.4b (win+linux)
#7
I like documentation, I have a bad habit of doing things the hard way. I'd love to read it.
______________________________________________
OS = Ubuntu 14.04 LTS (64bit)
Reply
Re: LDCad 1.4b (win+linux)
#11
I have a question.
Is it possible to use the rubber band templates to transform the rubber band instead of only making the circle larger or smaller (a bit like how the pneumatic hoses or flex axles can be transformed in LDCad)?
For example, if I want to make a connection between two technic bushes, I need a long, more straight band instead of just a normal circle.

Is that currently possible with LDCad and if so, how exactly?
Reply
Re: LDCad 1.4b (win+linux)
#12
You mean deform like in this picture:

http://www.melkert.net/img/mel/screenShot07.png

If so you just add additional 'circles' for that by selecting an existing one and pressing the ins key. Also keep an eye on the current grid plane (e.g. side view etc).
Reply
Re: LDCad 1.4b (win+linux)
#13
Yes, exactly like that. For some reason I can't get it to work (although I have the feeling I'm the problem and not LDCad Wink ).

I tried the ins key again (I already tried that, since it's also used for other flexible parts). This time though, something happened instead of just nothing: a 2nd rubber band appeared. Just a normal, standalone rubber band. I tried the ins key again, and the second rubber band started to transform, but the first didn't.

I closed LDCad, opened it again, started a new model, inserted a new rubber band, tried the ins key again, but nothing is appearing, just like before.

Do I have to select a certain part of the rubber band to make it work?
Reply
Re: LDCad 1.4b (win+linux)
#14
Ins will always insert the last used part / duplicate the selection so you might have not selected a circle last.

Also as the rubber band you drop into your model lives inside it's own ldr, so you must make sure you are editing that model or use the nested editing mode from the top level model.

Nested editing will be the easier way as you keep your whole model in view. You go into nested editing mode by selecting its tab in the top right session label panel.

I know nested editing can be confusing (I've been told Smile )

The pneumatic hose tutorial clip on youtube might give some insight into using nesting mode.

I'm also in the midst of writing documentation about generic (nested) editing.
Reply
Re: LDCad 1.4b (win+linux)
#15
I'm 100% sure I have the circle rubber band selected.
I've tried both the rubber band ldr and the nested mode.
I've also watched the youtube video ( a few days ago already actually) and unless I'm just being blind, I'm not doing anything wrong.

One thing that just started appearing when I press ins while having the rubber band selected: a little box with the text "click anywhere to insert a new skin meta". Is it maybe that I have accidently turned a setting on/off that causes it to not work (seems unlikely though, since other flex parts are just working)?

I find it really annoying that I can't get it to work. Don't get me wrong, it's not your fault, I just have the feeling that I'm being a bit stupid and completely missing something Wink
Reply
Re: LDCad 1.4b (win+linux)
#16
Seems you are on the right track as the 'click anywhere...' message can only appear when you are working at the band level.

But apparently you clicked the skin (rubber band itself) last, so you are inserting/duplicating invisible control metas (those control how the rubber band segments are generated).

To change the band shape, you need to duplicate / add control points. Which you do by clicking the red/green/blue crossed center of the white placeholder circles (I thought you mend those when writing 'circle').

edit: talking about stupid I just noticed I connected the pneumatics wrong in that tutorial clip Smile
Reply
Re: LDCad 1.4b (win+linux)
#17
Ah! I found it. I have to select the center of the cirle, where the 3 little arrows are. I was constantly trying to select the band itself or selecting one of those yellow balls. I was pretty sure though, that I already tried it numerous times by selecting the center.

Well, anyway, I got it working. It's actually even more powerful than I was expecting. You really did a great job on the creation and editing of flexible parts. It's going to save me tons and tons of time! Thanks!
Reply
Re: LDCad 1.4b (win+linux)
#18
Just got a crash when trying to create a very complex group in nested mode, that included parts from main model, parts from a submodel and (this is probably the source of crash) all parts of a shock absorber, inserted as a template and used twice in the group.
Fortunately I somehow expected problems with this nightmare and saved before Wink
Reply
Re: LDCad 1.4b (win+linux)
#20
You are right it's probably the shock parts as those have slightly different processing when grouping etc. I'll try to reproduce it and fix it for the next version.

In the meantime you can probably avoid the problem by not putting (generated) template parts in groups and instead add their reference. You add the whole shock as one to a group during nesting mode by 'excluding' it. To do that click any of it's parts and click exclude selection from the menu or press 'e'. It will then behave as a single model / part again even during nesting.
Reply
Re: LDCad 1.4b (win+linux)
#22
Mmhhhh... "e" seems to do nothing - or I don't use that properly. Does pressing "e" change something in the way selection is displayed? Anyway I still get the crash.
Quote:I'll try to reproduce it and fix it for the next version.
Very easy, just a part and a shock absorber is enough.
Reply
Re: LDCad 1.4b (win+linux)
#23
Sorry it seems exclusion is also somewhat broken combined with spring templates. It currently only seems to work when using 'e' while the spring part is selected during nesting.

I might do a 1.4c version for these problems as 1.5 is still far from stable it self Sad
Reply
Re: LDCad 1.4b (win+linux)
#25
I did some quick debugging and it seems both this issue and the grouping one are caused by the auto group(s) in the spring part. you can therefore prevent both issues by ungrouping the spring parts first (ether in their own subfile or through nesting).

Hope that at least lets you do what you originally intended to do.
Reply
Re: LDCad 1.4b (win+linux)
#28
Quote:Hope that at least lets you do what you originally intended to do.
No problem, I did it another way (removed parts from the submodel that forced me to do nested edition, made the rotation in normal mode, and replaced rotated parts in the submodel).
Reply
Re: LDCad 1.4b (win+linux)
#19
Angles, angles everywhere...
- Is there a way in LDCad to get the angle you must rotate a part with some offset between ends (typically a shock absorber in a suspension)? Nothing fancy of course since it is simply (**) arcsin(offset/length)
- it would be nice to display (in selection property) the angle of a part (selection) in working plane
- What about having a stepless rotation mode with part snapping enabled?

(**) Maybe not so simply after all...
Shock length is 110 ldu, offset is 20ldu, giving an angle of 10.47°. I select the shock, press O to get local orientation, then enter value in rotation tool. Visually, it's too far away, and when I check the angle using selection info, I read 13.18°. What happens???

   
Reply
Re: LDCad 1.4b (win+linux)
#21
Philippe Hurbain Wrote:Is there a way in LDCad to get the angle you must rotate a part with some offset between ends (typically a shock absorber in a suspension)? Nothing fancy of course since it is simply (**) arcsin(offset/length)
I usually put a tmp axle or something somewhere in a streight line from the rest position and dest position. And then use those combined with the base of the spring. After the rotation you can use ''o' to move the shock's length by the difference in length (blue info labels minus the starting length). I'll add a selection info mode for getting that difference in the next version.

Philippe Hurbain Wrote:it would be nice to display (in selection property) the angle of a part (selection) in working plane
I'm not sure what you mean, to get any angle you need a reference which is usually at least two vectors. The selection info uses the two sides of the triangle for that but I don't have that info with editing plane orientations.

Philippe Hurbain Wrote:What about having a stepless rotation mode with part snapping enabled?
I wanted to write it's allready there but for some reason disabling the grid still applies stepping to rotations. I'll correct that in the next version.

Philippe Hurbain Wrote:Shock length is 110 ldu, offset is 20ldu, giving an angle of 10.47°. I select the shock, press O to get local orientation, then enter value in rotation tool. Visually, it's too far away, and when I check the angle using selection info, I read 13.18°. What happens???
Is/was selection info set to be relative to the editing plane? You could get slightly wrong values if it's not as it measure the angles of the selection 'triangle' otherwise.

Could you post (or email me) the model in it's current state so I can see exactly what you are trying to do.
Reply
Re: LDCad 1.4b (win+linux)
#24
Roland Melkert Wrote:After the rotation you can use ''o' to move the shock's length by the difference in length (blue info labels minus the starting length). I'll add a selection info mode for getting that difference in the next version.
Ah - yes, a good method for a shock absorber. But that wouldn't work for a fixed length part (typical example: links between ball pins).

Quote:I'm not sure what you mean, to get any angle you need a reference which is usually at least two vectors. The selection info uses the two sides of the triangle for that but I don't have that info with editing plane orientations.
OK, what I had in mind is meaningless. Kind of "absolute angle" projected in working plane. The purpose was to be able to rotate a part the same way as another. But I now realize that there is a much simpler way using local axes and ctrl+home...

Quote:Is/was selection info set to be relative to the editing plane? You could get slightly wrong values if it's not as it measure the angles of the selection 'triangle' otherwise.
Could you post (or email me) the model in it's current state so I can see exactly what you are trying to do.
I think I did the things well. At least the rotation window (see screen shot) says "current editing plane rotation". Two things I am sure:rotation angle value is correct, and rotationresult is wrong (regardless of display value, but this value seems right!)

I'll send you the model tomorrow (don't have it here).
Reply
Re: LDCad 1.4b (win+linux)
#26
I think I might know what's going on here.

The selection info angles (while rel to grid) are measured against the imaginary 2D plane of the grid, when the shock starts out in some odd orientation and you gather the sel info in that state you actually measuring it as if the shock was in abs/grid orientation.

If you then change the grid to match the shock in order to do the rotation you will get the wrong result as the angles had the wrong reference.

In short you need to set the grid orientation to the same plane as the segment it most be rotated over. The is usually done by setting the grid to the shocks orientation before getting the angles.

Hope this is somewhat clear.
Reply
Re: LDCad 1.4b (win+linux)
#27
Quote:In short you need to set the grid orientation to the same plane as the segment it most be rotated over. The is usually done by setting the grid to the shocks orientation before getting the angles.
Mmhhh... I set grid orientation to shock before rotating it, so angle is set (and measured) in the same coordinate frame. And the problem is not a measurement one, but a rotation one, the shock is really rotated by a greater angle than the on calculated.
Reply
Re: LDCad 1.4b (win+linux)
#29
Very frustrating I'm still not sure what the underlying problem is but I'm reasonably sure it's not a bug in the rotation dialog.

Is this an official model, if so what's its number? I would like to setup that suspension myself later tonight in order to ether find a bug or the reason for this behavior. I'm a sucker for these kinds of puzzles Smile
Reply
Re: LDCad 1.4b (win+linux)
#30
It's the 42038 Artic truck...
Reply
Re: LDCad 1.4b (win+linux)
#31
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


Attached Files Thumbnail(s)
           
Reply
Re: LDCad 1.4b (win+linux)
#32
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)


Attached Files
.ldr   42038 - Arctic Truck.ldr (Size: 788.56 KB / Downloads: 0)
Reply
Re: LDCad 1.4b (win+linux)
#33
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
Reply
Re: LDCad 1.4b (win+linux)
#34
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!!!
Reply
Re: LDCad 1.4b (win+linux)
#35
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:

Code:
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.
Reply
Re: LDCad 1.4b (win+linux)
#36
Ah, got caught again with this one.... I'll update file!
Reply
Re: LDCad 1.4b (win+linux)
#38
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.
Reply
Re: LDCad 1.4b (win+linux)
#39
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
Reply
Re: LDCad 1.4b (win+linux)
#57
Given the choice between limiting the input and changing to 128-bit precision, I would suggest limiting the input. If you change to 128-bit precision you're not fixing the problem, just moving it - I could still put in an angle to a bajillion decimal places and cause an overflow. Besides, who needs to specify an angle to that level of precision anyway? Unless I got my math wrong, a change in the 10th decimal place of an angle will result in a displacement of less than 0.01LDU on an arm of half a kilometer.

Sorry if this reply is too late and you've already written the code - not sure why it didn't occur to me on any of my previous readings of this thread!
Reply
Re: LDCad 1.4b (win+linux)
#40
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!

Owen.
Reply
Re: LDCad 1.4b (win+linux)
#41
Owen Dive Wrote:[...]
* 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.
[...]

I second this. It's very annoying when I manually input some rotation/transformation data using the numpad and then hitting enter automaticly. Instead of applying the new data it just closes the dialog without doing anything.
It's especially annoying because I'm constantly hitting enter automaticly without even thinking about that I shouldn't do that Wink
Reply
Re: LDCad 1.4b (win+linux)
#42
Probably no need to third, but... I agree!
Reply
Re: LDCad 1.4b (win+linux)
#43
I am the fourth Smile
Reply
Re: LDCad 1.4b (win+linux)
#44
Owen Dive Wrote: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!
Hi Owen, been a long time indeed.

Owen Dive Wrote:* 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.
You are right I will setup default actions for all dialogs in the next version.


Owen Dive Wrote:* 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.
I like this idea, maybe I'll add some small icon to group cells as I'm already planning to add some other indications to the bin cells anyway. Might not be in the first 1.5 beta though, but maybe the second or so.


Owen Dive Wrote: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.
I'm working on documentation, added basic editing last week so the more hidden features will be next. But if you have any thoughts on how to improve the accessibility of those features let me know. The menu structures aren't set in stone and it's also possible to have certain items at multiple places which might help.

Thanks for the feedback.
Reply
Re: LDCad 1.4b (win+linux)
#45
Another little (?) wish: Double clicking on a part in parts bin currently replaces selected part. Good thing... But I'd like (when no part is selected) this double click to create a new part placed and oriented like the last selected one. This would help with parts with no connectivity, we would start in a known place then use move/rotate tools. Dragging a new part from parts bin is not so convenient, especially when using a fine grid. On a new model/submodel (thus with no previous part selected) the new part would be created at origin with default orientation.
And probably pressing insert while hovering over parts bin should do the same as double click.
Reply
Re: LDCad 1.4b (win+linux)
#46
I like the ins key suggestion.

Inserting parts without something selected isn't a big deal I'm just a bit concerned the less experienced user might end up with lots of duplicate parts at the same location. So I'll add it as an option disabled by default.

Thanks for the suggestions.
Reply
Re: LDCad 1.4b (win+linux)
#47
Quote:So I'll add it as an option disabled by default
Seems wise!
Reply
Re: LDCad 1.4b (win+linux)
#51
While reading basic editing documentation, a few things came up...

- I noticed a little glitch: after saving a new model, top right screen area is properly updated with file name, but LDCad main window title still says "[New file]"
- In move mode, what about pair of shortcut keys to move in direction perpendicular to editing plane? I thought to PgUp/PgDn but they are already used for step. Maybe ctrl+arrows? Now I understand that this is not only orthogonal to the editing plane but also to LDCad philosophy...

- Not related, but I found a subtle connectivity bug: the small technic panel connects to axle 2 with a 1 ldu offset, only at one end of the axle... See attached file.
- And another: Bionicle tooth 41669 snaps on axles with a 2 ldu offset.


Attached Files
.ldr   bugcon.ldr (Size: 228 bytes / Downloads: 0)
Reply
Re: LDCad 1.4b (win+linux)
#56
Sorry I seem to have missed this post.

I could assign a key to moving along the editing plane dead axis, problem is there are indeed not many logical keys left. It could be solved by the planned (prob 1.6) key reassignment feature as you could then assign it to anything you want while being 'unbound' by default.

I'll also check if there's something else (bug like) at play concerning those offsets I seem to remember fixing a similar issue a while back but I don't know if this was in the 1.5 or earlier source.

Thanks for reporting.
Reply
Re: LDCad 1.4b (win+linux)
#64
I don't know if this has already been asked as I was too lasy to read through this endless thread but I'd like to ask for the following features:

* Possibility to lock a part in place and also from the possibility to select it by LMB-clicking, say only a CTRL+LMB would unlock it.
* Additional shortcut for INS (in this case CTLR+D) to ease shift from MLCad to LDCad
* Shortcut for rotation in Move mode (a) without the need to switch to Rotation mode
* Browsing through the part bin by clicking on the empty space above/below the slider so that I don't have the need to actually grap the slider and move it.
* An autosave function 'cos...

* Clicking "Clear" in the "Color bin -> Favorites" crashed the prog and my lovely model vanished into thin air :-(. Furthermore "Add current" nor "Remove current" did work - or at least didn't what I supposed them to do.

w.
LEGO ergo sum
Reply
Re: LDCad 1.4b (win+linux)
#65
Willy Tschager Wrote:Possibility to lock a part in place and also from the possibility to select it by LMB-clicking, say only a CTRL+LMB would unlock it.
I like this idea a lot I'll try to implement it in one of the 1.5 beta's.

Willy Tschager Wrote:Additional shortcut for INS (in this case CTLR+D) to ease shift from MLCad to LDCad
Configurable hotkeys is pending when that's in place I could setup predefined sets.

Willy Tschager Wrote:Shortcut for rotation in Move mode (a) without the need to switch to Rotation mode
ctrl+r will bring up de rotation dialog no matter the mode, just 'r' and 'm' switches the pin to rotate/move. Alternative could be to split the view as each view has its own pin mode etc.

Willy Tschager Wrote:Browsing through the part bin by clicking on the empty space above/below the slider so that I don't have the need to actually grap the slider and move it.
This has been asked (by email) and is on my todo list. Alternative for now might be using the pageup/down keys.

Willy Tschager Wrote:An autosave function 'cos..
* Clicking "Clear" in the "Color bin -> Favorites" crashed the prog and my lovely model vanished into thin air :-(. Furthermore "Add current" nor "Remove current" did work - or at least didn't what I supposed them to do.
I'm sorry, I've found the cause (pretty stupid one too) and corrected it in my 1.5 source. I'll add auto save to my planned features list (alongside with 'bak' files).

edit: forgot about the add favorites: that will add them to the favorites group you can navigate to in the part bin window.

Thanks for your feedback Willy
Reply
Re: LDCad 1.4b (win+linux)
#66
Roland Melkert Wrote:
Willy Tschager Wrote:Shortcut for rotation in Move mode (a) without the need to switch to Rotation mode
ctrl+r will bring up de rotation dialog no matter the mode, just 'r' and 'm' switches the pin to rotate/move. Alternative could be to split the view as each view has its own pin mode etc.

Just to clarify what I'm looking for. Adding parts to the top view I'd like to have a shortcut which quickly rotates a part clockwise while I'm in Move mode. So, while I move parts around either with the mouse or the arrow keys, I'm able to rotate it without the need to painstakingly point at the corners of the bounding box to rotate it with the mouse. Also adding a 90 degree rotation step would help enormously.

In addition, I couldn't find an indication in the status bar or somewhere in which mode (either Move (m) or Rotation ®) I'm in.

w.
LEGO ergo sum
Reply
Re: LDCad 1.4b (win+linux)
#67
* I'd like to have a toolbar with the usual Front, Back, Top, 3D, ... buttons
* I'd like to have a toolbar to shortcut the split views:

   

Thanks, w.
LEGO ergo sum
Reply
Re: LDCad 1.4b (win+linux)
#68
Willy Tschager Wrote:* I'd like to have a toolbar with the usual Front, Back, Top, 3D, ... buttons
* I'd like to have a toolbar to shortcut the split views:

[attachment=1566]
Currently I'm working on changes to the windowing system for 1.5, in 1.6 I'm hoping to improve the tool bar. In the meantime: you can place the front/back etc items from the view menu in the toolbar but you have to supply custom icons to make sense of them.

Willy Tschager Wrote:Just to clarify what I'm looking for. Adding parts to the top view I'd like to have a shortcut which quickly rotates a part clockwise while I'm in Move mode. So, while I move parts around either with the mouse or the arrow keys, I'm able to rotate it without the need to painstakingly point at the corners of the bounding box to rotate it with the mouse. Also adding a 90 degree rotation step would help enormously.
You can add a 90 deg rotation step to the grid. I'll see if I can find some logical way to make both rotation and move possible at the same time in the 2D windows.

Willy Tschager Wrote:In addition, I couldn't find an indication in the status bar or somewhere in which mode (either Move (m) or Rotation ®) I'm in.
You are right about this, never really realized it myself Smile

PS, I decided to add ctrl+d to 1.5 as I realized it has a different meaning then the current ins key when working with a single selected item.
Reply
Re: LDCad 1.4b (twisted cables)
#69
I recently generated a lot of RJ cables with LDCad and noticed that twisted cables didn't always looked nice. So I made a little experiment to see what happened.
   
From top to bottom:
  • Folded cable, no twist. The random color shows the nice refinement of segment length
  • Straight cable - perfect of course
  • 180° twisted cable. Looks completely degenerated. Probably some singularity in calculations
  • 180° twisted cable with one end slightly raised. Unaligned end avoids singularity but twist is concentrated in ends segment instead of beeing evenly spread.
  • Adding a 90° rotated control point in the middle gives a much better look, but there is no refinement of segment size.
  • Same thing, but middle CP is offset to cause refinement. Looks even better...
  • When limiting the twist to 165°, there is no longer singularity but the low number of segments makes it look rather coarse.
I remember Kevin Clague telling me that he had a hard time with torsion when he wrote LSynth...


Attached Files
.mpd   twistedcables.mpd (Size: 513.95 KB / Downloads: 0)
Reply
Re: LDCad 1.4b (twisted cables)
#70
Philippe Hurbain Wrote:I recently generated a lot of RJ cables with LDCad and noticed that twisted cables didn't always looked nice. So I made a little experiment to see what happened.

The problem comes from rotation interpolation like you noticed it goes away when you limit the rotation difference between two control points to <180 degree. Other wise it will interpolate the other way around and or bumps into (protected) division by zero problems.

As for the rough segments you can fix that by decreasing the skin basesize (e.g. 100% instead of 400%) The default 400% translates into a minimal of 4ldu segment length which might be to big for short and or very twisted things.

If the twists are very tight it might also help to use a higher resolution donor file or fallback to astatic (LSYNTH like) placement configuration as things might not be worth the file size explosion vs quality win.


Philippe Hurbain Wrote:I remember Kevin Clague telling me that he had a hard time with torsion when he wrote LSynth...

I know what he mean I've had some headbanging moments my self Smile
Reply
Re: LDCad 1.4b (twisted cables)
#71
O wait I noticed I got the scale wrong from your pictures, those 180 twists are using way more the 4ldu length segments.

It seems the segments are merged while they shouldn't, this because it merges based on the path y direction angle (0 deg) and does not take into account the roll difference Smile

Thanks for noticing this Philo I'll make some improvements in one of the 1.5 versions.

In the mean time you can just disable merge by setting the skin's max merge to '1', like in the attached mpd


Attached Files
.mpd   flat.mpd (Size: 294.84 KB / Downloads: 0)
Reply
Re: LDCad 1.4b (twisted cables)
#72
OK, I get it better now. Nonetheless I tried to reduce max merge to 1 on the 165° twisted cable, the torsion remains concentrated on the middle of the cable. Somewhat strange, the cable with middle CP (2x90°) looks more evenly twisted.
Reply
Re: LDCad 1.4b (win+linux)
#73
I love the "Select > Same part" and color as well as the "Select > Current step" feature and would like to know if there is a some sort of information available telling you how many parts/colors are in the selection?

Furthermore I'd like to know if there is a way to "hide" the steps? It would help making adjustments to bricks in an earlier step in reference to, say the current or number 10.

w.
LEGO ergo sum
Reply
Re: LDCad 1.4b (win+linux)
#74
Currently there is no direct way to hide steps, the current implementation basically uses 'hide if >curStep'.

But you can use the select everything in the current step (from a zero selection as all add functions add to to the existing selection). And then hide things using the normal part hiding ('h') feature. If you do that for all unwanted steps you end up with only the parts in the wanted steps.

I do have some additional stepping control planned, so I'll add this to the todo list.

I like your selection information idea, as there is currently only information about parts in the current step etc (using the 'I icon' in the lower right). I could extend that panel to include selection statistics and of create an additional part bin group like the current step info ones.
Reply
Re: LDCad 1.4b windows 10 ???
#92
With all the Windows 10 hype...

I'm curious has someone tried LDCad 1.4b or 1.5 Alpha on it?

I don't really expect problems with it though, but please let me know if there are.
Reply
« Next Oldest | Next Newest »



Forum Jump:


Users browsing this thread: 1 Guest(s)
Forum Jump:


Users browsing this thread: 1 Guest(s)