Fixed and improved Brairlle Object

Added Split Camel Case extension
This commit is contained in:
LarsBrubaker 2018-03-10 16:32:04 -08:00
parent 94f6eebfe2
commit d44207ea2a
19 changed files with 274 additions and 485 deletions

View file

@ -52,7 +52,6 @@ namespace MatterHackers.MatterControl.DesignTools
return item;
}
[DisplayName("Diameter")]
public double Diameter { get; set; } = 20;
//[DisplayName("Top")]
//public double TopDiameter { get; set; } = 0;

View file

@ -44,6 +44,15 @@ namespace MatterHackers.MatterControl.DesignTools
{
}
public HalfSphereObject3D(double diametar, int sides)
{
this.Diameter = diametar;
this.LatitudeSides = sides;
this.LongitudeSides = sides;
Rebuild(null);
}
public static HalfSphereObject3D Create()
{
var item = new HalfSphereObject3D();
@ -53,9 +62,7 @@ namespace MatterHackers.MatterControl.DesignTools
}
public double Diameter { get; set; } = 20;
[DisplayName("Longitude Sides")]
public int LongitudeSides { get; set; } = 30;
[DisplayName("Latitude Sides")]
public int LatitudeSides { get; set; } = 10;
public void Rebuild(UndoBuffer undoBuffer)

View file

@ -64,9 +64,7 @@ namespace MatterHackers.MatterControl.DesignTools
return item;
}
[DisplayName("Outer Diameter")]
public double OuterDiameter { get; set; } = 20;
[DisplayName("Inner Diameter")]
public double InnerDiameter { get; set; } = 25;
public double Height { get; set; } = 20;
public int Sides { get; set; } = 30;

View file

@ -53,9 +53,7 @@ namespace MatterHackers.MatterControl.DesignTools
}
public double Diameter { get; set; } = 20;
[DisplayName("Longitude Sides")]
public int LongitudeSides { get; set; } = 30;
[DisplayName("Latitude Sides")]
public int LatitudeSides { get; set; } = 20;
[DisplayName("Start Angle")]

View file

@ -61,7 +61,6 @@ namespace MatterHackers.MatterControl.DesignTools
}
public double Diameter { get; set; } = 20;
[DisplayName("Sides")]
public int Sides { get; set; } = 30;
public void Rebuild(UndoBuffer undoBuffer)

View file

@ -29,7 +29,9 @@ either expressed or implied, of the FreeBSD Project.
using System.ComponentModel;
using MatterHackers.Agg.Font;
using MatterHackers.Agg.Transform;
using MatterHackers.Agg.UI;
using MatterHackers.Agg.VertexSource;
using MatterHackers.DataConverters3D;
using MatterHackers.VectorMath;
using Newtonsoft.Json;
@ -103,18 +105,20 @@ namespace MatterHackers.MatterControl.DesignTools
});
var offest = 0.0;
double pointsToMm = 0.352778;
foreach (var letter in NameToWrite.ToCharArray())
{
var letterPrinter = new TypeFacePrinter(letter.ToString(), new StyledTypeFace(NamedTypeFaceCache.GetTypeFace(Font), PointSize * 0.352778));
IObject3D letterMesh = new Object3D()
var letterPrinter = new TypeFacePrinter(letter.ToString(), new StyledTypeFace(NamedTypeFaceCache.GetTypeFace(Font), PointSize));
var scalledLetterPrinter = new VertexSourceApplyTransform(letterPrinter, Affine.NewScaling(pointsToMm));
IObject3D letterObject = new Object3D()
{
Mesh = VertexSourceToMesh.Extrude(letterPrinter, Height)
Mesh = VertexSourceToMesh.Extrude(scalledLetterPrinter, Height)
};
letterMesh.Matrix = Matrix4X4.CreateTranslation(offest, 0, 0);
this.Children.Add(letterMesh);
letterObject.Matrix = Matrix4X4.CreateTranslation(offest, 0, 0);
this.Children.Add(letterObject);
offest += letterPrinter.GetSize(letter.ToString()).X;
offest += letterPrinter.GetSize(letter.ToString()).X * pointsToMm;
}

View file

@ -53,17 +53,12 @@ namespace MatterHackers.MatterControl.DesignTools
return item;
}
[DisplayName("Inner Diameter")]
public double InnerDiameter { get; set; } = 10;
[DisplayName("Outer Diameter")]
public double OuterDiameter { get; set; } = 20;
[DisplayName("Toroid Sides")]
public int ToroidSides { get; set; } = 20;
[DisplayName("Ring Sides")]
public int PoleSides { get; set; } = 16;
[DisplayName("Starting Angle")]
public double StartingAngle { get; set; } = 0;
[DisplayName("Ending Angle")]
public double EndingAngle { get; set; } = 360;
public void Rebuild(UndoBuffer undoBuffer)