64 Commits

Author SHA1 Message Date
Michael L Smith
5afc0ed517 Added variable operators + one test so far 2016-03-05 22:09:11 -08:00
Michael L Smith
627569e6ed Tests / fixes for bindings being propagated on cloned objects 2016-03-05 18:22:58 -08:00
Michael L Smith
6e4c018df7 Fix for Cube/TranslatedObject cloning of bindings 2016-03-05 15:26:14 -08:00
Michael Smith
d8eb02ecc4 + Renamed Sizes class to Inches
+ In progress Bindings clone functionality
2016-03-04 22:36:14 -08:00
Michael Smith
047a6472b1 Text3D variable bindings. 2016-03-03 22:09:38 -08:00
Michael Smith
5726b63dec Added Cube binding constructor, test, corrected Sizes.InchesToMillimeters 2016-03-03 21:59:58 -08:00
Michael Smith
421694559f Added Cylinder variable-binding constructor, test + missed Height in binding. 2016-03-03 21:47:23 -08:00
Michael L Smith
730b54d703 Added a sphere constructor that takes variables to pre-bind internal values 2016-03-03 19:51:01 -08:00
Michael Smith
627d60c314 + Parameterized bindings for Translate 2016-03-02 21:23:38 -08:00
Michael L Smith
534bba1408 + Parameterized bindings for Rotate, scale 2016-03-02 21:01:34 -08:00
Michael L Smith
cc293b1638 Parameterized bindings for color, mirror, resize. 2016-03-02 20:42:37 -08:00
Michael L Smith
892fccdf7e + Added Color overload to automatically bind variables to passed-in values 2016-03-02 19:24:24 -08:00
Michael L Smith
13dbc41149 Bindings for:
+ Mirror
+ Resize
+ Scale
+ Rotate
+ Translate
2016-03-02 19:07:29 -08:00
Michael L Smith
7f7447e633 Bindings for Color 2016-03-01 18:30:42 -08:00
Michael L Smith
8eba76a670 NotSupportedException on MultiStatementObject base class bind method 2016-03-01 18:20:48 -08:00
Michael Smith
54b8e6a686 + Text3D bindings
+ Text3D happy path binding tests
2016-02-29 23:52:25 -08:00
Michael Smith
5d9f7c2a65 + Bindings for all public Cylinder fields / tests 2016-02-29 23:17:18 -08:00
Michael L Smith
564a19a286 + In-progress Cube/center binding implementation 2016-02-29 21:52:13 -08:00
Michael L Smith
0989c4660c + Implemented Cube size bindings and synonyms for them 2016-02-29 21:16:21 -08:00
Michael Smith
d80e2c036a + Added bindings for the remainder of Sphere's properties
+ Tests for Sphere properties
2016-02-29 18:43:35 -08:00
Michael Smith
5487af3d95 Reworked Sphere to support binding either Diameter or Radius 2016-02-29 18:34:19 -08:00
Michael Smith
7e7affcad4 + Adjusted StatementBuilder to conditionally use bindings
+ Added Binding.cs
+ Added initial variable binding implementation to Sphere.cs
2016-02-27 15:55:13 -08:00
Michael Smith
59e1042345 Refactored Variables to be a dictionary of string:variable, added new accessor methods, then refactored to fix OSCADObject.ToFile's top section variable output test 2016-02-27 14:34:14 -08:00
Michael Smith
6b628d9bca Test for .Open() if file path is invalid. 2016-02-26 18:11:56 -08:00
Michael Smith
2976110f05 Shifted references to IFileInvoker to Dependencies.cs, added factory func to Dependencies.cs for providing IFileInvoker. 2016-02-24 23:17:35 -08:00
Michael Smith
8b05e2af6a Shifted Settings.Globals to Variables.Global 2016-02-24 23:04:05 -08:00
Michael Smith
ac6f3c2f51 Shifted FileInvoker/Writer classes to /Files, updated namespace to OSCADSharp.Files 2016-02-24 22:51:32 -08:00
Michael L Smith
9305dcf5ec Reversed a weird change to one OSCADObject test 2016-02-24 21:38:22 -08:00
Michael L Smith
8678c3293d Added a test / changes to ensure null globals and/or null variable names do not affect outputs. 2016-02-24 21:36:44 -08:00
Michael Smith
0237d9f35b Mocked some FileWriters for settings output tests. 2016-02-24 00:53:41 -08:00
Michael Smith
05e73130b6 Added Moq to UnitTests project via NuGet 2016-02-23 22:00:56 -08:00
Michael L Smith
a4613ea79d + Reworked Sphere to use StatementBuilder as well to conditionally output $f* values 2016-02-23 17:47:36 -08:00
Michael L Smith
3a7875ee51 + Reworked Cylinder so that if $f* values are omitted, they don't appear in output. 2016-02-22 20:36:15 -08:00
Michael L Smith
4527a3cd33 + Position() on resized objects is now supported via the averaging of Bounds() positions. 2016-02-22 18:43:26 -08:00
Michael L Smith
62a0a034a1 + Decided not to support Bounds() on Text3D objects, since there's a lot of work needed before it will be viable. 2016-02-22 18:32:17 -08:00
Michael Smith
96693e062b Added optional recursive flag to Children() to allow selection of immediate children instead of all descendants. 2016-02-21 20:27:56 -08:00
Michael Smith
511cb45b6f + Removed Mimic, because it doesn't really make sense with the new Position() and Bounds() features 2016-02-21 20:08:17 -08:00
Michael Smith
8c5dde2ce7 Added a couple tests for child name retention after clone. 2016-02-21 19:59:20 -08:00
Michael Smith
cce795332f Basic Bounds implementations for most transforms and booleans + some test updates. 2016-02-21 01:22:44 -08:00
Michael L Smith
fd677aa909 + Initial Bounds implementation for Cube, Cylinder, Sphere and (sort of) Text3D 2016-02-20 23:19:28 -08:00
Michael L Smith
4dc79e8bc2 + Added an auto-incrementing Id to OSCADObjects 2016-02-20 14:21:41 -08:00
Michael Smith
0141538a2d Added NotSupportedException on ResizedObject.Position 2016-02-19 17:48:28 -08:00
Michael Smith
80c400dee8 Fix for an issue where Rotating/Translating an object, then using Scale would yield the wrong Position() value. 2016-02-19 17:33:30 -08:00
Michael Smith
f1f699afe4 Moved a bunch of tests into folders 2016-02-18 22:19:03 -08:00
Michael Smith
1bd6ad3543 + Updated Difference's Position() behavior to return the position of the first child (object being differenced) 2016-02-17 22:57:20 -08:00
Michael Smith
69a739c12f + Added some + and - operator tests
+ Adjusted behavior so that using + or - repeatedly adds to the same Union/Difference object instead of a nasty nested chain
2016-02-17 22:50:33 -08:00
Michael Smith
160986eb95 + Fix for a missing newline occurring for some solids in block statemants. 2016-02-17 22:31:51 -08:00
Michael L Smith
3024b7a5fe + Added one more test for position after lots of operations. 2016-02-16 20:00:55 -08:00
Michael L Smith
b6a454e8b9 + Added NotSupportedExceptions on all block statements except Hull and Union when Position() is called on them 2016-02-16 19:54:34 -08:00
Michael L Smith
2bbe452da6 + Added a NotSupportedException when Position is called on a mirrored object that's been mirrored on multiple axes + test 2016-02-16 19:34:33 -08:00