138 Commits

Author SHA1 Message Date
Michael Smith
de013112db + Renamed Variable.Name to Variable.Text
+ Added CompoundVariable as result from operations on variables
+ Added constructor flag for Variable to optionally add it to globals on creation
2016-03-06 18:09:21 -08:00
Michael Smith
dd9ab94fa1 + Renamed Bounds max/min away from underscore in name
+ Moved Bounds.cs to Public/Spatial
2016-03-06 17:51:28 -08:00
Michael L Smith
2ca5c42094 Shifted all files to Internal/Public root folders to deliniate things that are internal versus public. 2016-03-06 16:40:45 -08:00
Michael L Smith
301e92dfff Shifted all publicly visible classes to the OSCADSharp namespace 2016-03-06 16:28:06 -08:00
Michael Smith
61fc5cf227 Added numerical negation operator on variables 2016-03-06 15:24:25 -08:00
Michael Smith
a048f8baa1 Completed V1 of Variable operators 2016-03-06 02:30:44 -08:00
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 Smith
4c51ffc3f4 Replaced a bunch of conditionals with new method BindIfVariableNotNull 2016-03-03 21:27:56 -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
8fa6a42040 Merge pull request #3 from Exolun/Feature/VariableBindings
Feature/variable bindings
2016-03-02 21:28:06 -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
255318fb07 + Added IBindable on OSCADObject and cascaded it down.
+ Removed redundant IBindable declaration on Solids
2016-02-29 23:58:31 -08:00
Michael Smith
54b8e6a686 + Text3D bindings
+ Text3D happy path binding tests
2016-02-29 23:52:25 -08:00
Michael Smith
53be8a6a1b Deleted unused method in Text3D 2016-02-29 23:18:18 -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
0d578131d8 Added BindableVector 2016-02-29 19:25:33 -08:00
Michael Smith
f4ff157a63 + Moved Binding-related classes to Bindings folder 2016-02-29 18:47:24 -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
0994750fb4 Refactored Bindings.cs to use reflection and internal methods for logic / setting values. 2016-02-29 18:17:34 -08:00
Michael L Smith
cf189fb075 Typo fix 2016-02-28 15:26:03 -08:00
Michael L Smith
ee75d6a6b7 Shifted a few settings/dependency related files to Settings folder 2016-02-28 15:15:25 -08:00
Michael L Smith
da558ce75f Refactored getOpenSCADPath out to OpenSCADPathFinder 2016-02-28 15:12:38 -08:00
Michael L Smith
26f4d70876 Added getOpenSCADPath method to discover path to OpenSCAD executable amongst multiple options 2016-02-28 15:08:27 -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
d5ec961cb1 Removed Bind method from OSCADObject, added IBindable, Binding.cs, and BindingMapper stubs. 2016-02-25 23:52:16 -08:00
Michael Smith
963a58783a Updated Vector3.ToString to match OpenSCAD's vector format of plain [x, y, z] 2016-02-25 22:58:20 -08:00
Michael Smith
4f0d3ed1be +Added Variable class, Bind method to OSCADObject 2016-02-25 22:51:39 -08:00
Michael L Smith
eb49310d8a Changed the dictionary in Variables.cs to a ConcurrentDictionary 2016-02-25 17:56:05 -08:00
Michael Smith
9f11c39986 + Added SingleStatementObject (abstract) between OSCADObject and repetetive single-objectt transforms.
+ Shifted basic parent/child/object reference assignments to SingleStatementObject
2016-02-24 23:30:21 -08:00
Michael Smith
763479985b Renamed MultiBlockStatementObject to simply 'MultiStatementObject' 2016-02-24 23:18:54 -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