49 Commits

Author SHA1 Message Date
Michael Smith
2cd40e157c Added ImportedModel Class 2016-05-01 23:09:43 -07:00
Michael Smith
44b71e0c37 Shifted Cube/Cylinder/Sphere/Text3D back to Solids 2016-03-18 00:08:38 -07:00
Michael Smith
78990782b9 Shifted a number of classes to DataBinding folder/namespace 2016-03-17 23:51:38 -07:00
Michael Smith
cbd59b48bd Moved Bounds/Matrix/Vector3 back to Spatial 2016-03-17 23:32:22 -07:00
Michael Smith
a6fd33c3d0 Shifted Inches to Utility folder / namespace 2016-03-17 22:36:02 -07:00
Michael Smith
1edce998d1 Reduced visibility on many more methods / constructors to meet more NDepend rules. 2016-03-14 18:24:58 -07:00
Michael L Smith
301e92dfff Shifted all publicly visible classes to the OSCADSharp namespace 2016-03-06 16:28:06 -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
421694559f Added Cylinder variable-binding constructor, test + missed Height in binding. 2016-03-03 21:47:23 -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 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 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
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
8b05e2af6a Shifted Settings.Globals to Variables.Global 2016-02-24 23:04:05 -08:00
Michael Smith
4474d43532 Added DefaultFileInvoker, updated FileInvoker, made OSCADObject return a fileInvoker from .ToFile 2016-02-24 22:48:54 -08:00
Michael L Smith
4532e7b20d Added Variables class, Settings class, settings/header output in OSCADObject.ToFile 2016-02-23 19:14:50 -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
ddb0a319c9 + Refactored Text3D to use StatementBuilder 2016-02-22 20:12:04 -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 Smith
28bb1736e9 Added .ToFile(path) on OSCADObject 2016-02-21 11:39:36 -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 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
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 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
07c845bcbd + Position interpolation for single-axis mirroring. 2016-02-15 21:45:38 -08:00
Michael L Smith
8831610bda + Implemented Position on Cylinder, Sphere, Text3D
+ Made the executive decision that Text3D in OSCADSharp is always centered in script output, to facilitate correct position calculation.
2016-02-15 21:00:43 -08:00
Michael L Smith
12eb89adbb Added some tests for known expected interpolation positions. 2016-02-15 20:30:46 -08:00
Mike Smith
1be343fadc Possible functioning implementation of Rotate's point interpolation (at least with center=true). Further testing needed. 2016-02-15 00:31:20 -08:00
Mike Smith
2a7ee3ab63 Added Cube position, Translate interpolation 2016-02-14 23:27:53 -08:00
Mike Smith
5a61dd2199 Fix for Hull and Minkowski not adding the basis object to the children affected by the Hull/Minkowski operation. 2016-02-14 18:45:31 -08:00
Mike Smith
ae3f9e4d2f Added HulledObject, Hull 2016-02-14 11:34:58 -08:00
Mike Smith
e1aa360635 Added MinkowskiedObject, Minkowski 2016-02-14 11:22:17 -08:00
Mike Smith
1746190165 Added 'mimic' method to copy identical transforms to other objects 2016-02-14 01:07:18 -08:00
Mike Smith
8fe459a5ba + Deleted Equals and GetHashCode overrides in Cube/Sphere.
+ Added an IsSameAs method to OSCADObject
+ Modified tests accordingly
2016-02-13 13:01:02 -08:00
Mike Smith
f74592116f Added Add/Subtract vector operators, and Negate and Clone methods 2016-02-10 23:46:31 -08:00
Mike Smith
03ea1c3cb6 Added some constructors for common ways to create simple solids 2016-02-10 23:16:20 -08:00
Mike Smith
152a63ee77 Added builtin linear extrude on Text3D 2016-02-10 00:09:07 -08:00
Mike Smith
1449cdd2b2 Added Clone() method to OSCADObject and all descendants 2016-02-07 22:04:05 -08:00
Mike Smith
8435737df5 Added Intersection boolean operation 2016-02-07 21:34:40 -08:00
Mike Smith
9ccf494e81 Added Difference boolean operation 2016-02-07 21:29:41 -08:00
Mike Smith
efc981579f Added Union (first Boolean operation) 2016-02-07 21:07:58 -08:00
Mike Smith
584049346f Added overloads for transforms that take a vector to allow for X/Y/Z doubles to be used directly 2016-02-07 11:49:29 -08:00
Mike Smith
43d9369187 Finished out composite behaviors for OSCADObject transforms. 2016-02-07 11:40:13 -08:00
Mike Smith
64066f81f1 Filled out remaining block string output for transforms 2016-02-07 11:17:33 -08:00
Mike Smith
f585e017c2 Added BlockFormatter, updated string construction for ColoredObject (More to follow) 2016-02-07 11:00:27 -08:00