Line mitering in 4.0.39.23

1
Chris Smith
1/10/2022 5:28 AM

Hi All,

We've found a regression issue upgrading to this version whereby "mitres" on thick lines are not being rendered. See attached pictures - mitre-new.png shows the output in 4.0.39.23, mitre-old.png shows the output in 4.0.39.6.

You can see the mitring on the corners is all messed up in 4.0.39.23. Is there anything that we need to change to get the old behaviour?

Source DWG is also attached, code to render (in linqpad):

C# Code:
void Main()
{
    DxfModel dxf = DwgReader.Read(@"C:\temp\mitre.dwg");

    var width = 1000;
    var height = 1000;

    GraphicsConfig config = new GraphicsConfig
    {
        BackColor = ArgbColors.Black,
        CorrectColorForBackgroundColor = true,
        DisplayLineTypeElementShapes = true,
        DrawImageFrame = false,
        TryDrawingTextAsText = true,
        DisplayLineWeight = true,
        ApplyLineType = true
    };

    var gdiGraphics3D = new GDIGraphics3D(config);
    gdiGraphics3D.CreateDrawables(dxf);

    var bounds = new Bounds3D();
    gdiGraphics3D.BoundingBox(bounds, Matrix4D.Identity);

    var transform = DxfUtil.GetScaleTransform(
                        bounds.Corner1,
                        bounds.Corner2,
                        bounds.Center,
                        new Point3D(0d, height, 0d),
                        new Point3D(width, 0d, 0d),
                        new Point3D(width / 2, height / 2, 0d)
                    );

    var img = ImageExporter.CreateBitmap(gdiGraphics3D, transform, 1000, 1000);
    img.Dump();
}

Cheers,
Chris

Chris Smith
1/10/2022 10:12 PM

Hi Wout,

Not that I was expecting it to be fixed, but just to confirm this is still an issue in 4.0.39.26 (ie for the line type fix).

Cheers,
Chris

Wout
1/12/2022 11:06 AM

Hi Chris,

I've just fixed this problem as well.

Thank you for the report,

- Wout

1