(2016-12-31, 10:05)Philippe Hurbain Wrote:(2016-12-30, 23:50)Travis Cobbs Wrote: Since the *tang primitives are already official, you can't really change them to be based on an 8-sided circle, can you? It's true that LDView wouldn't be able to create substitutions at its lowest primitive setting of 8, and having the tang primitives work with an 8-sided primitive would be nice, but it doesn't seem like something that can be done now. I'll investigate supporting this primitive. It doesn't appear to be very difficult (although supporting it in POV export where it's most useful may or may not be hard).
As you say, we could live with this (currently we already have the 1-16chrd and the 4-4ering primitives that don't play well with odd primitive substitution notches). Or we could obsoletize current tang primitives (used by very few parts anyway, only two AFAIK).
I have added support for this in my dev code. Unfortunately, all odd-numbered primitive resolutions in LDView don't work properly for this primitive*. Consequently, I have it round up to the next even numbered resolution for this primitive, which means that if you select an odd-numbered entry, this primitive will get rendered with a higher resolution setting than the others. This doesn't effect POV export, because POV export uses actual circles (effectively infinite curve resolution).
* If you look at the primitive resolution slider in LDView, you can count the notches, starting at 1 on the left. Whatever notch you select, if you multiply that by 8, you end up with the actual number of sided used by LDView to render a full circle for that setting. Unfortunately, any number of sides not evenly divisible by the 4 segments of the base LDraw primitive don't work, since the curve points then don't meet the mid points of the lines between the four external points in the primitive. (This is hard to explain, but trust me, it doesn't work, and I'm not going to try to figure out how to fill it in.)