Improved flaten

This commit is contained in:
Lars Brubaker 2023-12-01 17:45:27 -08:00
parent cf608735bc
commit 25dd3c7f78
2 changed files with 24 additions and 13 deletions

View file

@ -144,18 +144,25 @@ namespace MatterHackers.MatterControl.DesignTools
public override void Apply(UndoBuffer undoBuffer)
{
// change this from a text object to a group
var newContainer = new GroupObject3D();
newContainer.CopyProperties(this, Object3DPropertyFlags.All);
foreach (var child in this.Children)
if (Output == OutputDimensions.Output2D)
{
var clone = child.Clone();
newContainer.Children.Add(clone);
}
this.FlattenToPathObject(undoBuffer);
}
else
{
// change this from a text object to a group
var newContainer = new GroupObject3D();
newContainer.CopyProperties(this, Object3DPropertyFlags.All);
foreach (var child in this.Children)
{
var clone = child.Clone();
newContainer.Children.Add(clone);
}
undoBuffer.AddAndDo(new ReplaceCommand(new[] { this }, new[] { newContainer }));
newContainer.Name = this.Name;
}
undoBuffer.AddAndDo(new ReplaceCommand(new[] { this }, new[] { newContainer }));
newContainer.Name = this.Name;
}
}
public override async void OnInvalidate(InvalidateArgs invalidateArgs)
{
@ -244,10 +251,13 @@ namespace MatterHackers.MatterControl.DesignTools
var letterPaths = new List<IVertexSource>();
foreach (var letter in textToWrite.ToCharArray())
{
var style = new StyledTypeFace(ApplicationController.GetTypeFace(this.Font), pointSize);
var style = new StyledTypeFace(ApplicationController.GetTypeFace(this.Font), pointSize)
{
FlattenCurves = false
};
var letterPrinter = new TypeFacePrinter(letter.ToString(), style)
{
ResolutionScale = 10
ResolutionScale = 10,
};
var scaledLetterPrinter = new VertexSourceApplyTransform(letterPrinter, Affine.NewScaling(mmPerPoint));
@ -286,6 +296,7 @@ namespace MatterHackers.MatterControl.DesignTools
};
if (Output == OutputDimensions.Output2D)
{
var letterPath = new VertexSourceApplyTransform(new VertexStorage(scaledLetterPrinter),
Affine.NewTranslation(offset.X, offset.Y));
letterPaths.Add(letterPath);

@ -1 +1 @@
Subproject commit d69357cc53c5e83c4722353de3c2030ef84e2475
Subproject commit ea29e79df34dc1ad8bac8f09e4333f49212922db