3D Printing Day 9: Picking a Software, Processing

TL;DR

Processing isn't a software; it is a programing language based on Java and a community. Learning how to wrangle 3D models in Processing can lead to the development of a stand alone piece of software capable of generating STL files based on parameter input by novice users. Or it can enable the creation of sculptures based on data. What Processing is not designed for is banging out one-off models quickly.

At the very least, using Processing to develop 3D models inculcates the coder with an appreciation of all the hard work put into existing 3D software. 

 

All the code

Start Here

I hadn't played with Processing for a while so the whole process took me 6+ hours worth of work. It will take me the rest of the day to document/comment the code, etc.  

If you aren't sure what the point would be of bothering to learn 3D rendering in Processing, check out some examples of what is possible by way of inspiration. 

Next read the MakerBot curriculum section on Processing

Help can be hard to find because the name of the language is a real word. While doing this write up I found one 3rd party video overview on 3D in Processing but I haven't watched the whole thing:  Processing Tutorial 5 - Basic 3D by by Joseph Boston

The 4 main 3D libraries for processing are:

I only used 2 of them in my 4 step process to make a workable file to print from. 

Step 1: Shapes 3D Library

Shapes 3D library has a javadoc reference online and the S3D4P_Showcase example included with the library is very useful. I appropriated it for my first attempt at a model. It requires the PeasyCam Library

The problem I ran into repeatedly is that the Yogurt Cup SIP is not a solid primitive, it is a hollow primitive with a wall thickness. If I was adding up solid primitives building a model would have been much easier.

Cylinders in the S3D4P are called Tubes and the visibility of their ends can be turned on and off.

iBasket.drawMode(Shape3D.SOLID, Tube.E_CAP);
iBasket.drawMode(Shape3D.WIRE, Tube.S_CAP);
boolean vis = false;
iBasket.visible(vis, Tube.S_CAP);
//iBasket.visible(vis, Tube.BOTH_CAP) //turn them both off 

First thing I made two nested baskets, one each for the interior and exterior walls. The gap between them indicated the wall thickness. After I got that far I realized I had no idea how to punch a hole for drainage. 

The next approach was making a collection of tubes, but I wasn't sure how to go about connecting them up, so I moved on to see if the primitives in a different library were better.

Step 2: ModelBuilder Library

Yogurtcup_sip_v0_1h_procs_mb

The ModelBuilder library has some primitives associated with it, but more importantly it will export information held within an instance of it's UGeometry object to an STL file.

The examples are robust but not heavily commented. That is why I started with Shapes3D. I couldn't parse what I was looking at initially but with one round under my belt the example code became clearer. I used the mb_02_primatives_01 example as my start point. 

With the ModelBuilder primitives I stalled in the exact same place as I did with Shapes3D. I could only figure out how to make a collection of unattached cylinders. The interior wall isn't lining up correctly. I didn't bother to fix it. 

 

Step 3: Building my own primitives

Yogurtcup_sip_v0_1h_process_custom

I found an excellent tutorial by Jan Vantomme on how to roll your own 3D primitives (specifically a cone). The Learning section of the Processing site also has an example of implementing vertices as a cylinder and there is an alternative method for building a cylinder on the Processing wiki. Vantomme's, however is the clearest. 

I used his example to write my own primitives using vertices ( See beginShape() and vertex() ) that aren't just shells but have thicknesses.

  • void drawThickCylinder( int sides, float r1, float r2, float h, float t)  
  • void drawCup( int sides, float r1, float r2, float h, float t)
  • void drawDrainCup( int sides, float r1, float r2, float h, float t, float d)
  • void drawDrainCupWithLip( int sides, float r1, float r2, float h, float t, float d, float l)

Not the cleverest of names but they work.

Step 4: Combine my own primitives back over to ModelBuilder

Since I was so close I decided to go all the way and integrate drawDrainCupWithLip with the mb_01_vertexlist_03_ribbon3D  ModelBuilder library example.  That function became buildDrainCupWithLip().

The first version of the code actually rendered a number of the surfaces inside-out. I know because I snuck a peak in MeshLab which will be the topic of the next post. The first two pictures are what the model looked like with inside out faces. The third and fourth pictures are of the final fix. 

The rules for making faces that actually face the right direction:

  • For upward faces: draw out to in
  • For downward faces: draw in to out
  • For outward walls: draw bottom to top
  • For inward walls: draw top to bottom

 

The Stats

The stats seem hardly fair given how unique Processing is in this context, but I'll give a stab.

 

Version 1.5.1 (Processing) Various libraries were used.
Date 4/14/2012

Target Demographic
  • Ideal Object - Abstarct objects
  • Ideal User - Advanced computer user/programer

Access
  • OpenSource - Yes
  • Free - Yes
  • Premium Version - No
  • Linux Version - Yes
  • Browser Based - No
  • Requires Internet Acces - No

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - No where I found (Other than Thingiverse)
  • Instashare - No
  • Collaborative Editing: What works for code works for Processing
  • Official Tutorials - Good on core functions, Libraries' official could be better 
  • Community Tutorials - bad to excellent

Editing
  • How many tutorials/videos to build first project - looked at 6-10 examples and reference documentation. 
  • Default Bkg Color - As you wish
  • Good for Computer Beginners - No
  • Requires 3 Button Mouse - No 
  • Real-world units - No
  • Numeric controls - Yes
  • WYSIWYG - If you build it
  • Scripting - Yes - it's code
  • Plugins & Extensions - Lots of Libraries and example code out there to help

Input
  • Format Types: Up to you to find it or write it
Output
  • Direct to STL - Library exists (ModelBuilder)
  • Format Types: Up to you to find it or write it
  • Adjust scale on output - Up to you tow write it if you want it
  • Direct to Printing Service - No

 

3D Printing Day 8: Picking a Software, Wings3D

TL;DR

I'm really glad I went back and tried Wings3D. It is an OpenSource GUI based modeler that is relatively easy to use and intuitive. Documentation is lacking, but there is enough to get started and stay interested.  Wings3D also supports the most input and output formats of all the software tested. 

3D Model as a .wings file and STL file

 

Other People's Videos

The documentation is pretty thin. I did find an old version of the documentation, but mostly I hunted on YouTube.

Start with this one

Wings3d basics - User Interface

Watch with the sound off

3D Modeling - Part I: Navigation in Wings 3D

3D Modeling - Part II: Deformation in Wings 3D

3D Modeling - Part III: Deformation in Wings 3D (Cont.)

Others

Wings 3D demo: Round Hole in Rectangular Solid

Start of a Christmas Tree demo

 

Mine

 

Keyboard shortcuts I don't want to forget

R to return camera to home view

X,Y,Z to snap camera to a dead on view of that axis

G - to select an Edge Ring once a edge is selected -  (Then C to create Edge Loop at the center of the ring)

L - The Edge Loop Select once a vert or edge is selected that is part of a loop

TAB - access numeric editing

5 - toggle from % numeric edit to direct units edit

 

 

The Stats

Version 1.4.1
Date 4/13/2012

Target Demographic
  • Ideal Object - Wide variety
  • Ideal User - Intermediate computer user

Access
  • OpenSource - Yes
  • Free - Yes
  • Premium Version - No
  • Linux Version - Yes
  • Browser Based - No
  • Requires Internet Acces - No

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - No where I found (Other than Thingiverse)
  • Instashare - No
  • Collaborative Editing: No
  • Official Tutorials - None 
  • Community Tutorials - Okay, not as many as Blender or SketchUp

Editing
  • How many tutorials/videos to build first project - looked at 6+ examples, about 10 minutes apiece. 
  • Default Bkg Color - gray, different themes available
  • Good for Computer Beginners - Maybe
  • Requires 3 Button Mouse - Yes, although there is preference 
  • Real-world units - No
  • Numeric controls - Yes
  • WYSIWYG - Yes
  • Scripting - No
  • Plugins & Extensions - If you know Erlang you can write a plugin

Input
  • Format Types: NDO, 3DS, AI, EPS, PS, LWO, LXO, OBJ, STL, SVG
Output
  • Direct to STL - YES
  • Format Types: NDO, 3DS, BZW, DAE, EPS, XML, LWO, LXO, OBJ, POV, RWX, STL, WRL, X
  • Adjust scale on output - Not for STL, other unknown
  • Direct to Printing Service - No

 

3D Printing Day 7: Picking a Software, OpenJsCad

TL; DR

OpenJsCad is another entry in the "model as programing problem" category. OpenJsCad has more flexibility than OpenSCAD but is currently way less pleasant to use.  OpenJsCad embraces dynamic variables. Even the shapes are variables. OpenSCAD has variables that behave more like glorified constants.  OpenJsCad entered the arena more recently (January 2012) and needs to resolve some interface problems. So while I think in the long run OpenJsCad might prove to be more powerful I didn't enjoy using it as much.

OpenJsCad is the only software I've tried that bridges both worlds in terms of where you interact with it. If installing software locally is not an option, that's okay - just go to the OpenJsCad home page and use it there. If you want to work offline, downloading the code is an option.

I'm not clear on why but the code does not live in the master branch on github. To get the actual source I had to go the the gh-pages branch and download the zip (rather than just clone the repository). After the unpacking the archive file I pointed Chrome to the index.html file included and everything worked perfectly.  Not quite as brain-dead easy as downloading an executable, but it would be possible to create models while lounging on a beautiful deserted island. 

I didn't read anything that wasn't either on or linked to the OpenJsCad project front page and still managed to do my model in under an hour. Having already logically plotted things out using OpenSCAD may have helped, but OpenJsCad uses pretty standard conventions that will be comfortable to JavaScripters. 

I did all my actual typing in BBEdit since the code window is small and "below the fold" when working on a laptop. I did not like that I couldn't see the code, model and status messages all at the same time. 

 

The Stats

Version ?
Date 4/13/2012

Target Demographic
  • Ideal Object - Algorithmicly generatived objets 
  • Ideal User - Programer/Programaticaly inclined, intermediate

Access
  • OpenSource - Yes
  • Free - Yes
  • Premium Version - No
  • Linux Version - N/A
  • Browser Based - Yes
  • Requires Internet Acces - No, if installed locally

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - No where I found (Other than Thingiverse)
  • Instashare - No
  • Collaborative Editing: Nothing built in, but whatever works for code will work for OpenJsCad
  • Official Tutorials - Examples provided
  • Community Tutorials - Didn't not find a ton, didn't look very hard

Editing
  • How many tutorials/videos to build first project - looked at 3 examples
  • Default Bkg Color - white
  • Good for Computer Beginners - Maybe
  • Requires 3 Button Mouse - No
  • Real-world units - No
  • Numeric controls - It's ALL numeric...
  • WYSIWYG - Yes, but not directly editable, only a render of the code
  • Scripting - Yes (Duh)
  • Plugins & Extensions - The code is open source, I didn't not notice plugins or libraries

Input
  • Format Types: None
Output
  • Direct to STL - YES
  • Format Types: STL
  • Adjust scale on output - No
  • Direct to Printing Service - No

 

3D Printing Day 7: Picking a Software, OpenJsCad

TL; DR
OpenJsCad is another entry in the "model as programming problem" category. OpenJsCad has more longterm power than OpenSCAD but is currently way less pleasant to use.  OpenJsCad is more truly Object Oriented with dynamic variables (even the shapes are variables) and OpenSCAD is a bit more procedural with variables that are more like glorified constants.  OpenJsCad, however, is a lot newer and has some interface problems. So while I think in the long run OpenJsCad might kick OpenSCAD's feature set I didn't enjoy using it as much. I'll keep my eye on it though. I'm watching the github repo and if I ever get more free time this is exactly the type of project I'd enjoy helping out.

OpenJsCad is the only software I've tried that is the best of both worlds in terms of where you interact with it. If you can't install software on the machine you're using, that's okay - just go to the OpenJsCad home page and use it there. If you want to run locally, downloading the code is an option. I'm not clear on why but the code does not live in the master branch on github. To get the actual source I had to go the the gh-pages branch and download the zip (rather than just clone the repository). After the unpacking the archive file I pointed Chrome to the index.html file included and everything worked perfectly.  Not quite as brain-dead easy as downloading an executable, but it would still be possible to make a models while sitting on a beautiful deserted island. 

I didn't not read anything that wasn't either on or linked to from the OpenJsCad project front page and still managed to do my model in under an hour. Having done one first in OpenSCAD probably helped me know what kind of commands I should be looking for. 

I did all my actual typing in BBEdit since the code window is small and "below the fold" when working on a laptop. I did not like that I couldn't see the code, model and status messages all at the same time. 

3D Printing Day 6: Picking a Software, OpenSCAD

TL;DR
From dowload-to-model in OpenSCAD took about an hour... maybe. Programmers will be doing a serious happy dance. The UI holds a simple three paned window: one window for the code, one for the rendered model and one for debug messages. Just a few commands and a rendering of what's been typed updates in the window. Want to twiddle with the size? Change a number. What more facets? Change a number. OpenSCAD has won a place in my tool chain. At this nacent level models are conceptually created  much as they are in Tinkercad - stacking shapes together, taking other shapes away. (Constructive Solid Geometry) What I really want now is for OpenSCAD and Tinkercad to have a baby. I think the experience gained by manipulating the primitives directly in Tinkercad made knowing what to ask for in OpenSCAD extra easy.  Where OpenSCAD really shines is in how easy it is to change the shapes. The joy of variables! 

No video needed. I typed. It was very exciting. I do want to look into using BBEdit as the editor like I do with Arduino. As you can tell fromt the pictures I couldn't help parameterizing.

Read

Watched

 

 

The Stats

Version 2.62
Date 4/6/12

Target Demographic
  • Ideal Object - Algorithmic generative objets are where OpenSCAD shines
  • Ideal User - Programer/Programaticaly inclined, many levels

Access
  • OpenSource - Yes
  • Free - Yes
  • Premium Version - No
  • Linux Version - Yes
  • Browser Based - No
  • Requires Internet Acces - No

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - No where I found (Other than Thingiverse)
  • Instashare - No
  • Collaborative Editing: Nothing built in, but whatever works for code will work for OpenSCAD models
  • Official Tutorials - There is a manual but tutorials are done by the community
  • Community Tutorials - What I saw/read - great. I didn't delve to deep, though. I didn't have to for this.

Editing
  • How many tutorials/videos to build first project - Skimmed 3 articles, watched 1 video - not bad at all, but I program already and have no fear of a curly brace. 
  • Default Bkg Color - Yellow (can be changed to blue or red in the preference)
  • Good for Computer Beginners - No, but good for begining coders
  • Requires 3 Button Mouse - No
  • Real-world units - No
  • Numeric controls - It's ALL numeric...
  • WYSIWYG - Yes, but not directly editable, only a render of the code
  • Scripting - Yes (Duh)
  • Plugins & Extensions - The code is open source - I saw example of people forking the GitHub Repository or just using OpenSCAD with the output another program to good effect. UPDATE: There appears to be Libraries like MCAD (thanks @canadaduane )

Input
  • Format Types: DXF, as an include
Output
  • Direct to STL - YES
  • Format Types: STL, OFF, DXF, CSG, PNG
  • Adjust scale on output - No
  • Direct to Printing Service - No

 

3D Printing Day 5: Picking a Software, Blender

TL;DR  Blender has one of the steepest learning curves of any software I've tried to use in a long time. The climb is worth it for the computer savvy if the end goal is to produce a character model that can be used in animations and printed out as action figure. The competitors cost thousands of dollars. Making objects for the real world isn't the problem Blender evolved to solve and it is... quirky... using it to do so. Tutorials can be hard to follow because expert users customize their layouts so much. 3 button mice are not my favorite being a hand switcher, and the software cannot be used without one. So while I don't hate Blender, love that it is open source (C, C++, python) and get why it has a rabid fan base, learning it isn't where I want to spend my time right now. But I made the model, and I'm actually PROUD. Took a lot of work to figure out.

Since there is no official place to share files for Blender I've put everything on GitHub

https://github.com/carlynorama/3DModeling-IntroPosts

(download)

Web Resources

Videos Watched (and recommended) 

Videos 1-3 Here (15 minutes total)  http://cgcookie.com/blender/get-started-with-blender/
Cyberpunk Telescope (43 minutes, I watched about half): http://wiki.blender.org/index.php/Doc:2.6/Manual 

Videos I'd Watch Next

My Notes

So I watched a bunch of videos - but I wish I had seen the ones on http://blendtuts.com earlier. I haven't watched them all yet but I think they might have covered exactly what I needed to know. What was hard about the process for me is that all of the videos are for people who want to make objects that will only ever live on a screen. I did not see a lot of tutorials aimed at the 3D printing crowd. This has to be a searching problem on my end given the number of Blender built models on Thingiverse.

Commands I don't want to forget:

MMB (middle mouse button) - Oribit
MMB + SHIFT - Pan
MMB + CNTRL - Zoom

 

OPT/ALT + RMB (right mouse button) to select edge rather than vertex
CNTRL + TAB to get menu to choose what gets selected by default (including faces)
CNTRL + Z Undo

 

E - Extrude
S - Scale
SHIFT Select at least 3 vertices and then F to create a face
A to toggle selections (All <-> None)

My Video

 

The Stats

Version 2.62
Date 4/4/12

Target Demographic
  • Ideal Object - Model for use in a 3D world, anything but tiny tiny if there are also things athat are BIG. 
  • Ideal User - Expert

Access
  • OpenSource - Yes
  • Free - Yes
  • Premium Version - No
  • Linux Version - Yes
  • Browser Based - No
  • Requires Internet Acces - No

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - Nothing "official" it seems but plenty to choose from is you search for "blender repository"
  • Instashare - No
  • Collaborative Editing: No
  • Official Tutorials - Good, but not targeted at 3D printers
  • Community Tutorials - Terrible to Excellent. There are a lot of them. 

Editing
  • How many tutorials/videos to build first project - 2hr+ (Giver yourself a whole weekend if you really want to get comfortable. And keep using it regularly at first)
  • Default Bkg Color - Dark gray
  • Good for Computer Beginners - No
  • Requires 3 Button Mouse - Yes
  • Real-world units - Yes, users choice
  • Numeric controls - Yes
  • WYSIWYG - Yes
  • Scripting - Yes
  • Plugins & Extensions - Yes, many

Input
  • Format Types: DAE, BVN, SVG, PLY, STL, 3DS, OBJ, X3D, WRL

Output
  • Direct to STL - YES
  • Format Types: DAE PLY STL 3DS FBX OBJ X3D
  • Adjust scale on output - No, unitless unless units pre-indicated
  • Direct to Printing Service - No

 

3D Printing Day 4: Picking a Software, SketchUp

TL;DR  Just easy. Well, "just easy" after watching about 20-30 minutes of intro videos. Everything I wanted to be able to do, I could. With options comes complexity; I had to spend some time strategizing how to approach building the model since there were so many paths that would have worked. The plethora of YouTube videos helped. I would not plop a 6 year old down in front of Google SketchUp, but a computer user who has some familiarity with graphics packages shouldn't have a problem. Oh, and it is a real downloaded software with which I can make files that live only my computer. Didn't even need a login. And it's free. They get-ya in the free version by making the import and export options incredibly lousy. But another plus is the scripting language, so there is a plugin for that.

A quick search on the internet yields up more information about working with SketchUp than anyone could possibly consume. This is the huge SketchUp advantage - it is on version 8. People have been doing this for a while.

Resources

I watched quite a few other videos trying to glean how advanced users problem solve in SketchUp. I really thought I was going to end up using the FollowMe tool - if only because of its awesome name. As part of that investigation I watched a FollowMe Tool tutorial, How to make a Doughnut Helix, and one about Cuerpos de revolución. (Yes it is in Spanish. Apparently by a guy who used to do a little Parkour. I love the internet.) 

In the end, the Offset tool and the Push/Pull tool  took care of business.

My Video

Since I was able to make the shape so freaking quickly after watching the videos, I decided to make my first screen cast using a built in feature of QuickTime (Took me 25 tires in the end. Think creating a voicemail outgoing message, but 100 times worse.)

The Steps:

  1. Draw circle with a 27.5 radius
  2. Pull it up to 55 mm high
  3. Offset by  2.5 mm
  4. Pull the offset down 52 mm  (measure)
  5. Select the inner bottom edge of the cup with the offset tool, pull it in 22 mm to leave a 6 mm circle
  6. Push the hole down 3mm EXACTLY
  7. Select top outer rim with the Offset tool and pull it out 15mm
  8. Pull both parts of the face up 3 mm
  9. Delete extra circle on the top face
The Model

While google doesn't force-publish what you do, they do encourage folks to share what they've done in the Google 3D Warehouse. A dialog box pops up and asks you if want to share your model the first time you close a file with anything in it. The Google 3D Warehouse is huge. There is some weirdness with my Google 3D Warehouse login - I have two google logins and I can't seem to get either of them to show carlynorama as the contributor. Oh well, here is the link.

My model of a yogurt Cup SIP - string wick style  on the Google 3D Warehouse

The Run Down

Version 8.0.11751
Date 4/3/12

Target Demographic
  • Ideal Object - A building, an chair, a bracelet, whatever. 
  • Ideal User - Medium level computer user to expert

Access
  • OpenSource - No
  • Free - Yes
  • Premium Version - Yes ($495.00, includes Layout - a presentation software, "Why Go Pro")
  • Linux Version - Nothing native, version 8 works with Wine in Windows XP mode (reported on the Ubuntu Forum)
  • Browser Based - No
  • Requires Internet Acces - only to link to 3D Warehouse or get plugins

Privacy, Community & Learning
  • StalkerWare - No
  • Private Files - Yes 
  • Official Community Repository - Yes, Google 3D Warehouse
  • Instashare - From the warehouse, Google Buzz/Reader/Blogger/+, Facebook, Twitter, Digg, Delicious, MySpace, and various embed codes. Even for a 3D model version.
  • Collaborative Editing: Yes, via the warehouse
  • Official Tutorials - Great.
  • Community Tutorials - Terrible to Excellent. There are a lot of them. 

Editing
  • How many tutorials/videos to build first project - About 30 minutes worth
  • Default Bkg Color - Gray! (But you get to choose)
  • Good for Computer Beginners - Only if they are dedicated
  • Requires 3 Button Mouse - No, but can be helpful
  • Real-world units - Yes, users choice
  • Numeric controls - Yes
  • WYSIWYG - Yes
  • Scripting - Yes Ruby Script
  • Plugins & Extensions - Yes, many

Input
  • Rasters - Free: as flat uneditable things, yes. Pro and plugins might have more tools
  • 2D Vector - No. Pro and plugins might have more tools
  • Other 3D files - Free: DAE, KMZ, 3DS, DEM, DDF  / Pro: Also DWG, DXF (STL via plugin, untried)

Output
  • Direct to STL - Nothing native (Plugin, untried)
  • 2D Rasters: JPEG, TIFF, PNG
  • 2D Vectors: Pro Only PDF, EPS, EPIX
  • 3D Vectors: Free KMZ, DAE / Pro: Also 3DS, DWG, DXF, FBX, OBJ, VRML, XSI
  • Adjust scale on output - No, unitls pre-indicated
  • Direct to Printing Service - No

 

 

3D Printing Day 3: Picking a Software, Tinkercad

TL;DR The TInkercad browser-only software is slick, pretty and intuitive. Sadly that makes the absence of some features I want all the more glaring. Someone who hasn't been using graphics software since the 80's might be less high maintenance. The in-app tutorial "Quests" are a great teaching tool.  Way better than just a video. I feel like I'm close to a model that will actually work. If I didn't have alignment issues I think I'd be super happy with it as an intro tool. It doesn't yet have the features to be more than that. They're still pretty new. I'll keep checking back. 

UPDATE: I got some clarifications in the comments from the folks at TInkercad (Man they're on top of things) so I've made some changes to the text. 

There are two main features of Tinkercad I think are really interesting. The first is the moveable workplane and the second is that holes are entities. The introductory video is actually a bit hard to find. It lives on youtube and explains both of those features.

Watching this and doing some of the Quests is worth the 5-10 minutes. 

Heads Up: The software saves edits frequently without infinite Undo's. Always "save & close"  then reopen a duplicate at milestones.  - UPDATE - Apparently it does, I just did something glitchy, I'm not even sure what, if I can recreate, I'll let them know - 

I was able to create a model by stacking blocks pretty easily. However, the alignment is eyeballed. I can't get the cylinders to snap into alignment based on their centerpoints. I didn't have this problem in 3DTin because they use a center registration point and Tinkercad's is in a corner. I don't see a way to change that. 

I ended up making a second version with a different approach, placing the lip as an overlap on a too-tall cup instead of as a block resting on top. Also I've had more practice eyeballing things in the Tinkercad environment, so it is probably good enough. But I'm not sure my cup, lip and holes are perfectly centered on each other. I'd like to be sure before I waste plastic. It means I will never be confident enough to have a thinner wall. And since I can't explicitly place the center points over the same spot in the x plane numerically, or have an inference engine tell me when I'm dead center I guess I'll have to print it with decently thick walls and use calipers to check.

- UPDATE - They know, they know - 

Additionally tempering my enthusiasm is how I understand their business model. All usage levels are free. They take a kickback when you print one of your objects through the linked services. That is completely 100% fair. I like it. But when a third party buys a copy of what I've made - do I get a piece of the action, too? For most people this won't be a concern, the volumes are too low to matter. Why begrudge them if you like the software? But if someone makes something that gets really popular?  What happens then? Is that fair? What would be fair? They do let you leave your designs private, but then no one benefits... I'm just not 100% sure they've worked that out.

- UPDATE - Okay, this paragraph is not right. I wrote it based on text on the About Tinkercad page and either my reading comprehension was low or it is different now. There seems to be a Pro version in the works that I don't see how to buy... but I'm looking forward to it! - 

STATS:

Version N/A
Date 4/3/12

Target Demographic
  • Ideal Object - Smallish objects done for fun. 
  • Ideal User - Learner, low experience fine. 
Access
  • OpenSource - No
  • Free - Yes
  • Premium Version - Not yet?
  • Linux Version - N/A
  • Browser Based - Yes
  • Requires Internet Acces - Yes. At all times. 

Privacy, Community & Learning
  • StalkerWare - (UPDATED)  You decide. The user can design without logging in but if you clear your cookies all is lost. The default of all designs public not private, but you can have private files. All cloud stuff is going to have some elements of StalkerWare by defult, but thankfully you can create a login independent of a social software. All files live on the cloud. No local file format / mode if you want to make something totally private. No crack pipes for you!
  • Private Files - Yes, but they only live in the cloud. 
  • Official Community Repository - Yes, the Tinkercad website lets you browse what other people have done on Tinkercad, also has a publish-to-Thingiverse option.
  • Group Editing - Not that I saw, but you can pull a copy of someone else's design into your account with a single button press.
  • Instashare - To Twitter, Pinterest, Thngiverse
  • Official Tutorials - Excellent. They blow the curve. 
  • Community Tutorials - Didn't look at any. Didn't need to. 

Editing
  • How many tutorials/videos to build first project - (Intro Video, Some of the Quests) 1 video, optionally beginner quests. All very quick. Low bar. 
  • Default Bkg Color - White
  • Good for Computer Beginners - Yes
  • Requires 3 Button Mouse - No
  • Real-world units - Yes, mm only
  • Numeric controls - No
  • WYSIWYG - Yes
  • Scripting - No associated scripting language or text commands. 

Input
  • Rasters - No
  • 2D Vector - No
  • Other 3D files - No

Output

 

 

3D Printing Day 2: Picking a Software, 3DTin

TL;DR The model I ended up with is chunky, the wrong scale and I'd never print it. However, if I was somewhere with internet access and had to teach some basic 3D modeling concepts to anyone, no matter how young, I would use 3DTin, no doubt. Or if I was trying to recreate some classic 8 Bit video game characters. I can tell already, though, that 3DTin isn't going to work for me as my primary tool. Unbelievably easy to start with, not so good with precision.

Final Model Link: http://www.3dtin.com/qrgw
UPDATE: Moof on Thingiverse - http://www.thingiverse.com/thing:20718

3DTin is a simple teaching program. I like that it has a mode where you can place simple voxels. (Volumetric Picture Elements)  It reminds me of the pencil tool in MacPaint. A bit of childhood joy there. 3DTin also has some pre-made parameterized objects you can use called Geometries. The editing style is not directly manipulative of the Geometries. There are no handles to drag. Once an object is placed, editing requires clicking on the primitive using the select tool and then twiddling the options in the small dialog boxes.

The environment is "unitless" but you pick the scale on export of the STL.  Although that didn't work for me.

There are helpful videos. I only needed to watch the one on rotating to clarify how to pick the axis (x, y or z). 

The pro-fail for me is that you have to make an account with them and be online to use the program. That is a clear indication to me that something isn't meant to be a tool for people doing real work. And that is okay, not everything has to be. That you need to have premium membership (linked to one of three social networks) to have private files is what makes it a bit like StalkerWare to me. The fact that the Premium is only $4.99 saves it.

STATS:

Version N/A
Date 4/2/12

Target Demographic

  • Ideal Object - Smallish or low fidelity. Quirky items that don't need precision.
  • Ideal User - Learner, low experience

Access
  • OpenSource - No
  • Free - Yes
  • Premium Version - Yes ($4.99)
  • Linux Version - N/A
  • Browser Based - Yes
  • Requires Internet Acces - Yes, to save. Seems to have a good local cache though.

Privacy, Community & Learning
  • StalkerWare - Partially. You do HAVE to have a login, and you do have to use google, facebook or twitter to create that login. But at least the google login does't look too invasive. No private files - or even deleteing files - unless you go premium, but premium is only $4.99. All your files live on the cloud. No local file format / mode if you want to make something totally private. 
  • Private Files - Requires Premium, still on their servers only. 
  • Official Community Repository - Yes, the 3DTin website lets you browse what other people have done on 3DTin, also has a publish-to-Thingiverse option.
  • Instashare - To Twitter,Facebook,Google+,Thngiverse
  • Official Tutorials - Very Good, such as they are.
  • Community Tutorials - Didn't look at any, don't know if they exist.

Editing
  • How many tutorials/videos to build first project -  1 on rotating objects otherwise pretty clear. 
  • Default Bkg Color - White
  • Good for Computer Beginners - Yes
  • Requires 3 Button Mouse - No
  • Real-world units - No
  • Numeric controls - Yes
  • WYSIWYG - Yes, but no dragging handles, purely click and edit via dialog box.
  • Scripting - No associated scripting language or text commands. 

Input
  • Rasters - Yes, think very simple GIFs and PNG files
  • 2D Vector - No
  • Other 3D files - No

Output
  • Direct to STL - Yes
  • Adjust scale on output - Yes, unit-less environment that has you indicate final size on export of STL
  • Direct to Printing Service - i.Materialise

 

3D Printing Day 1: Picking a project

So CRASH Space has a flotilla of MakerBots and I live in a home with two MakerBots. My dirty secret - I have never 3D printed anything.

I'm hoping to change that this month because I have finally settled on project that seems simple to create and useful to me. Tokens and shot glasses and action figures are super fun, but I don't need any of those.  I generally wait to learn new skills until there is something I actually want. Now there is, a yogurt cup self irrigating planter.  The Grown In The City example is a bit different than what I want. It uses a larger container, for starters. I want to make a little basket that I can put inside a 6 oz yogurt container. My starter version will use a wick that hangs into the water, much like the DIY African Violet wick pot.  

I imagine mine having more of a basket profile, flush with the top like a tea-pot with an infuser. In fact, a teapot self watering planter is a cute idea but a little too Cozy Country for me. Yogurt cups are cheap, available, simple, paintable...etc. 

So with a plan in mind, the next step is to decide what software to use. I'll start that tomorrow by doing an sample model of my Yogurt Cup SIP in each of the (free) 3D software packages listed on the MakerBot curriculum site.