LDraw.org Discussion Forums

Full Version: Physical_Colour Parts
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I like to extend the possibilities of DATHeader.
Now I focused on the Physical_Colour parts.

As far as I have followed the last posts and discussions a part with the flag Physical_Colour should have the following:

1) There is only one line (linetype 1) in the wanted color.
1) There are only linetype 1 lines with colors different from color code 16.
2) The colorcode for this color is mentioned in the description in square brackets (fe [320]).
2) The colorcodes for these colors are mentioned in the description in square brackets (fe [320/83]).
2.1) If there is only one linetype 1 line the colorcode has to be mention in the description as follow (fe [320]).

If that is true and nobody claims I like to implement tests based on this definition.

I am sure that this definition is used in the past not correctly if the definition is correct. Please see the following part and references: http://www.ldraw.org/cgi-bin/ptdetail.cg...173283.dat
The next i like to implement is the new Part Alias.

Part Alias

1) Should have only one line (linetype 1) in color 16
2) Should have a leading "=" in the part description.
3) Should have a comment in the form "Alias of <filename of the linetype 1>"

Are the above defined statements correct, or do they need to be extended?

Your reply is highly wanted.

cu
Mike
Hey Mike,

there are parts, that will contain two (or more) lines (linetype 1), in my opinion. See for example the DesignID 47847. There are two different Physical_Colour combinations with the same DesignID...

Rolf
Ok, that is a good point. To achieve these physical color parts we need to have at least two lines of code.
So I change statement 1.
Indeed! sorry for my previous wrong (private) comment!
By the way, I am just searching our official library rules for these and similar rules and can not find something.

I like to know where we have fixed the meaning of the flags in front of the description:
_ underscore
~ tilde
= equal

Also I can not find a description when to use LDRAW_ORG parttypes:
Part
Part Alias
Part Physical_Colour
Shortcut
Shortcut Alias
Shortcut Physical_Colour

Just found a short description on the qualifiers "Alias" and "Physical_Colour" in "Appendix III (06-Sep-07)" of the header spec.

Maybe there is somebody that can explain to me why in an "Alias" part there might be more than one linetype 1 line ???

All these things should be mentioned in the header spec..

cu
Mike
As there are no more complains I try to integrate that into DATHeader.
As there are no more complains I try to integrate that into DATHeader.
I have extended LDFind to identify the parts containing the qualifier Physical_Colour.

The latest consens is that the colorcodes used are appended to the description in the form [320] or [0/320] if more than one color is used.

It seems that this notation of colour codes in the description has not yet reached our library.

We have 430 parts with the qualifier Physical_Colour in our library, but as far as I can see none of them carry the code at the end.

Please have a look into the attached list.

Should we recycle all official files?
Who cares about that?
Except for a handful, I can fix them automatically.

Chris> If you've got LDMakeList working on the PT, I can send you the script and you can adapt it to work there. You'll need the latest LDMakeList built from source though. That will make it all very easy.

The latest LDMakeList 2.14 can be found here now...

https://drive.google.com/folderview?id=0...sp=sharing

Tim
Just had the same problem. These need addressing!

w.
Any opinion on this?

w.
Seems that nobody has more ideas on this Sad
You are completely right. We should try write something that can clarify the different meanings of the mentioned qualifiers/types.

/Max
I am sure you have asked these questions before, by email and I sent a detailed response. What specifically is not clear?
Chris,

could you please forward that mail - I'd like to add the info tho the site.

w.
It was over a year ago. I'm not sure I could find it now.
I currently can not find it. The main question from me was that all the information should be accessible for all users. Smile

Edit:
In the wiki is also some relevant information which maybe knowbody kowns.
http://wiki.ldraw.org/index.php?title=Which_part_type

Edit:
I like to know where we have fixed the meaning of the flags in front of the description:
_ underscore
~ tilde
= equal

I try to write it here.
MLCad will group the files by names. Therefore these flags are introduced.
= is the newest and indicates !LDRAW_ORG Part Alias
~ indicates files that should not be shown in the MLCad parts list and this is for all !LDRAW_ORG Subpart
_ indicates !LDRAW_ORG Part Physical_Colour

If there is more to say, please feel free.
Most of the purpose of these special characters is to prevent the files being included in parts.lst. With the header standardisation this should not be necessary as the LDRAW_ORG line should define how the file should be listed.

The only checks that are made in the Parts Update header checking routine are:
- the descriptions of all subparts (i.e. line 4 = '0 !LDRAW_ORG Subpart') must start with '~'
- the descriptions of all aliases (i.e. line 4 = '0 !LDRAW_ORG Part Alias') must start with '='

The following check should be included (but the release of Physical_Colour parts is currently on hold)
- the descriptions of all physical colour parts (i.e. line 4 = '0 !LDRAW_ORG Part Physical_Colour') should start with '_'

The use of '~' for part files is at the author's discretion, to hide mouldings that are not released independently. This is one case where merely reading the LDRAW_ORG line is insufficient for tools to know how to treat the file. Maybe this would be clearer if we allowed an additional optional qualifier value to
Code:
0 !LDRAW_ORG Part| Subpart| Primitive| 48_Primitive| Shortcut [Alias|Physical_Colour]
such as Not_Independent
Adding a new type looks like a good idea, but "not independant" is not the term I would use: eg. a motor axle is not physically independant but is provided without ~ to allow users to rotate it freely in a model. "unmoveable"?
I struggled to find a good word for these. I rejected 'Subpart' (for obvious reasons) and 'Hidden' (describes a tool action rather than an attribute of the file).

What one or two words describes an 'individual moulding that is not available as a separate part'? What about 'Component'?
Chris Dee Wrote:What one or two words describes an 'individual moulding that is not available as a separate part'? What about 'Component'?
Submolding? ;-)
"component" has the same issue (but I can certainly live with that if usage is clearly detailed in the spec): a motor axle is a component but separately usable.
No - it is not a submo(u)lding. It is a separately moulded piece.
Thank you Chris for these words. This should be fixed in an official document! (That is my target!)

To add another qualifier does not make sense in my eyes because we have already a solution for that situation. Please do not duplicate informations.

I am sure that all applications work with the ~ to hide files in listings. This flag is also much quicker to read than the file content.

Just my 0,05 cent Smile
Michael Heidemann Wrote:To add another qualifier does not make sense in my eyes because we have already a solution for that situation. Please do not duplicate informations.

We already have duplicate information _... = Physical_Colour, =... = Alias

One aim of the !LDRAW_ORG statement is to define the 'selectability' of the file, and tools should only need to look at that to understand how to list the file. Inferring a special meaning from the first characteric of the description is archaic and lacks semantic clarity. At present for files flagged as '!LDRAW_ORG Part', tools also need also to look at the first character to decide whether or not to list the file as a selectable part. Changing these to '!LDRAW_ORG Part Component' or similar would obviate that need. We would then have:

0 !LDRAW_ORG Part = a regular selectable part
and the following for parts that should only be selectable under special conditions (i.e by number only, or by using additional controls within the tool)
0 !LDRAW_ORG Part Alias
0 !LDRAW_ORG Part Physical_Colour
0 !LDRAW_ORG Part Component
I think you are not right on this because a file with a Physical_colour part is a file with the colored reference to a normal part.

The Alias is the same part (no color defined) with another number.

So a physical color part can be an alias, but not every alias is a physical color part.

Therefore this is not a duplicate information.
I suggest an additional appendix for the LDraw.org Standards: Official Library Header Specification page:


Quote:Appendix VI
Programs relying on the parts.lst file rather then the LDRAW_ORG line use special characters to prevent the parts being included in the list:
- the descriptions of all subparts (i.e. line 4 = '0 !LDRAW_ORG Subpart') must start with '~'
- the descriptions of all aliases (i.e. line 4 = '0 !LDRAW_ORG Part Alias') must start with '='
- the descriptions of all physical colour parts (i.e. line 4 = '0 !LDRAW_ORG Part Physical_Colour') should start with '_'

The use of '~' for part files is at the author's discretion, to hide mouldings that are not released independently. This is one case where merely reading the LDRAW_ORG line is insufficient for tools to know how to treat the file.

Feel free to edit.

w.
There is another class of ~ prefixed files - obsolete parts, maintained for backwards compatibility but not to be used for new models. Maybe they also need a special !LDRAW_ORG syntax?
I personally feel that just adding another line to Willy's list instructing that the descriptions of obsolete parts should (must?) begin with ~. I agree that adding this section to the header spec is a good idea.
I though the ~ prefix was also used to indicate subparts not located in the s folder. Making the ~ character more of an 'do not display in part selections' kinda thing.
Yes, that is the
"The use of '~' for part files is at the author's discretion, to hide mouldings that are not released independently."
case.
I strongly feel that only adding one line is enough.

I like this a lot.