Saturday, March 12, 2016

Part 2: Midi Pedal Board Prototyping

This is a more advanced design prototyping construction tutorial.  The aim of this is to provide information on steps and modeling techniques in designing a Midi Pedal Board that includes, for instance, plywood media wall thickness into the overall design.  Added to this, you'll learn how to make usefully convenient component layouts of your design, so that this can be used in furthered refinement of your given design.

Covered in this tutorial:

-Precision numeric design working principles in Blender
-Previous research to have in mind before diving in...
-Use of unit system in design translation.
-A vertex oriented approach to precision working in Blender with mesh design construction.
  - This includes in design finding points on a given edge where such edge is neither perpendicular or parallel to a 'global' coordinate axis.  
-Better design practices when refining an overall object to sub component objects/parts.

Pre requisites:  You'll want to have watched the previous Tutorial in the series that I have done for the basics of layout, and I presume you have some basic working knowledge in Blender.  I'll cover more advanced topics such as individual vertex extrusions in redefining your design mesh.

Useful Blender functions:

Handy Blender Hotkey functions (used for this tutorial):

Transform viewport view (with mouse): Hold the middle mouse button down and drag mouse, or use numeric buttons (4,8,6,2).

Align view to selected object (with mouse cursor over the 3D View viewport window) press '.'
Top down view (in 3D view) press 7

All transform operations and extrusion have similar option inputs as follows:
(optional: single toggle + 'x' or 'y' or 'z' to global axis restriction or double toggling 'x' or 'y' or 'z' restriction to a selected transform orientation...also hitting shift+'x' restricts transform/extrusion to yz plane or shift + 'y' restricts transform/extrusion to xz plane or shift + 'z' restricts transform/extrusion to xy plane) + optional : other transform type (you can mix and match for instance Scaled Extrusions by pressing 'E' + 'S' + other optionals) + optional : numpad entry for numerically controlling transform/extrusion as opposed to providing mouse input..

Box Select (either in Edit or Object Mode) : B + mouse input boundaries (left mouse button to confirm boundaries)

Circle Select (either in Edit or Object Mode) : C + optional (middle mouse button rolling to increase
or decrease radius of selection boundary...optional left mouse button to select ...optional middle mouse button pressed to deselect

Translation/Move (either Edit or Object Mode): G + optionals mentioned above.
Scale (either Edit or Object mode)  'S' + optionals mentioned above.

Align Object to Transform Orientation:  Object selected in 'Object' Mode, select Object > Transform > Align Object to Transform Orientation:

Converting a Bezier Object to a Mesh Object:  With object selected Alt + C
Extruding (Edit mode) : 'E'  + optionals mentioned above.

Joining any added mesh object to another:  Select the first object (Object Mode), then hold the shift key and right mouse button select the second object, and then

Cursor Snapping:  In this tutorial, I do use cursor snapping to a given face especially in rapidly finding geometric centers.  For instance, selecting a face (Edit Mode) on the object, and then selecting Mesh > Snap (or Shift + S) > Cursor to Selected allows for selecting the face centroid rapidly on such mesh object.  This in turn can be used when adding any new object type and snapping it into a given coordinate position rapidly (e.g., with the newly added object selected in Object mode use path Object > Snap (or Shift + S) > Selection to Cursor.

Toggling Wireframe Mode on/off: 'Z'  This makes selecting groups of vertices, for instance, on a given perspective view axis easier.


Topically you'll learn also some new things such as:   in Edit Mode, duplicating selection vertices, and then separating selection vertices (while duplicated and bounded to the present mesh) to a new Object.

Prerequisite data for design:  W 12.5" x 5" L or 317.5 mm W x 127 mm L
Switch holes: 9.75 mm diameter
Led holes: 3.0 mm diameter
Plywood thickness 5.08 mm

Blender file: Pedal Board Blender File for this project

Midi Pedal Board Design prototyping in Blender

You can use blender like Sketch Up in a real world design context for 3D printing or as I have used it, in the context of 1:1 scaled design prints applied directly to plywood for cutting out the design component parts.

This tutorial gives provides some basic useful starting principles in working up to a design mock up:
Difficulty Level/Pre requisites:  (somewhat experienced in Blender...should know how to navigate Edit and Object mode, should know how to select between edges, vertices, and faces in Edit Mode, should know where Transform Orientation box is)

Covered in this tutorial:

-Precision numeric design working principles in Blender
-Previous research to have in mind before diving in...
-Use of unit system in design translation.
- Translating pre requisite data for overall dimension specification to a given starting geometry (in this case a plane)
- Build the pedal board geometry.  I don't cover repeating steps (procedural) but at least demonstrate, for instance, the process of adding a switch hole to the mesh design.  This is useful if you
want to cut into your mesh some geometry which is more smooth and continuous-like geometry (e.g., drill holes for component parts like switches, pentiometers, and so forth)

Things not covered:
-Subdividing the board into convenient easy to access component parts which then can be orthographically projection rendered (see previous Tutorial in this posting series on my blog site).
-More sophisticated anatomically correct model accounting for media type used (i.e., incorporating wall thickness of say the plywood stock that you intend to use for the prototype in the mesh model).

Handy Blender Hotkey functions (used for this tutorial):

Transform viewport view (with mouse): Hold the middle mouse button down and drag mouse, or use numeric buttons (4,8,6,2).

Align view to selected object (with mouse cursor over the 3D View viewport window) press '.'
Top down view (in 3D view) press 7

All transform operations and extrusion have similar option inputs as follows:
(optional: single toggle + 'x' or 'y' or 'z' to global axis restriction or double toggling 'x' or 'y' or 'z' restriction to a selected transform orientation...also hitting shift+'x' restricts transform/extrusion to yz plane or shift + 'y' restricts transform/extrusion to xz plane or shift + 'z' restricts transform/extrusion to xy plane) + optional : other transform type (you can mix and match for instance Scaled Extrusions by pressing 'E' + 'S' + other optionals) + optional : numpad entry for numerically controlling transform/extrusion as opposed to providing mouse input..

Box Select (either in Edit or Object Mode) : B + mouse input boundaries (left mouse button to confirm boundaries)

Circle Select (either in Edit or Object Mode) : C + optional (middle mouse button rolling to increase
or decrease radius of selection boundary...optional left mouse button to select ...optional middle mouse button pressed to deselect

Translation/Move (either Edit or Object Mode): G + optionals mentioned above.
Scale (either Edit or Object mode)  'S' + optionals mentioned above.

Align Object to Transform Orientation:  Object selected in 'Object' Mode, select Object > Transform > Align Object to Transform Orientation:

Converting a Bezier Object to a Mesh Object:  With object selected Alt + C
Extruding (Edit mode) : 'E'  + optionals mentioned above.

Joining any added mesh object to another:  Select the first object (Object Mode), then hold the shift key and right mouse button select the second object. Then hit Ctrl + 'J'.

Cursor Snapping:  In this tutorial, I do use cursor snapping to a given face especially in rapidly finding geometric centers.  For instance, selecting a face (Edit Mode) on the object, and then selecting Mesh > Snap (or Shift + S) > Cursor to Selected allows for selecting the face centroid rapidly on such mesh object.  This in turn can be used when adding any new object type and snapping it into a given coordinate position rapidly (e.g., with the newly added object selected in Object mode use path Object > Snap (or Shift + S) > Selection to Cursor.

Tip for numeric entry and precision matching a desired input measurement with transform/extrusion operations:
I frequently use the backspace to go left (back out of ) the existing digit placement on the mantissa.
Work sequentially on the mantissa as you input numerically a transform/extrusion starting from on the left side of the mantissa working right.  The method for numeric correspondence between a numeric transform can be honed in like a newton's method procedure whereby if you have a precise measurement, you are looking for a lower and upper boundary values where the min and max range is above and below a desired measure, select the min value at that position on the mantissa...(e.g. you find that .4 is the min and .5 is the max for providing a range of values below and above the desired precise transform measurement), so select .4 and then proceed selecting '5'  yielding .45 for the next digit on the mantissa.  If this is too high, select '4' yielding .44 and so forth until finding the lower boundary, or conversely selecting '6' yielding  .46 and so forth until finding the upper boundary and repeat the procedure until honing in precisely (or range tolerance) on the desired measure.  

Tips on Imperial versus Metrics which should I use? Problem with Blender...Blender uses decimal (base10) measurements for Feet for any length measure greater than a foot while anything less than a foot uses a decimal measure for inches.  Inches are implicit but not converted from feet ...for instance, 1 feet 6 inches is expressed in Blender as 1.5 feet. Problem: you'll have to convert between decimal feet measure for any sub feet lengths to inches.  Working in Imperial units may require some added conversion work relative to the metric system if you do decide to stick with Imperial units.  SketchUp I believe does make it easier when designing in Imperial units using feet inches readings as opposed to decimal feet or decimal inches readings alone.  So, in Blender, I personally use Google or some convenient Imperial to Metric conversion utility and sticking with Metric in Blender unless as stated you have all your measures converted to decimal feet units in Imperial units and not Feet inches units.  

Friday, March 11, 2016

True to Scale Design Blueprinting in Blender

   3D printing may be all the rage, or if you know someone with a CNC mill or have access to one, you may be able to build scale models of your work if you know how to adequately convert your model to .svg (or of similar appropriate file type) but what about true to scale printing blueprints of your work and transferring this to a desired media (e.g. wood, plywood) in aid for building your model?  Actually, you can do this, and it certainly could also help in the path to building your 3d model even as in the case of the CNC milling process.

I have a brief tutorial in prepping your model and exporting (bitmap files) from blender which can then be used for to scale printing from your favorite photoshop editor program.
Here is my Blender object file Pedal board design


Here are the steps in working with a model in blender:

 Your model needs to be adequately ready from 2 dimensional projection rendering.  This means that when you render parts of the model that you are able to align the planar viewport to an orthogonal view relative to its general parts geometry.  For instance, if you were rendering the sides of a box, you'd select each side of the box and project at an orthogonal angle relative to the face.  This gets more complicated, however, if your geometry (even being linear) has skew angles relative to the customary 3 dimensional axis.  In this case, each part of your 3 D model object should be broken down into object components that share a self similarity in terms of object geometry and its local or normal coordinate axis.  Good design practice in blender should allow you to select either groups of vertices or where the design is delineated at least as a separate object that is part of the overall 3D design.  

Once having the model ready as stated above, with components of the model that are neither orthogonal to one of the 3 Dimensional planes (and likely given at skew angle for orthogonal projection view) means you can as I have found:  Duplicate this component object (Shift + D) and then translate it to some position where it is not mixed in with the existing components 'assembled' model overall.  

Now in '3D View' if you select under 'Transform Orientation' > 'Normal' if the overall object's Normal coordinate axis matches that of 'Global' then you'll need to assign and record a Tranform Orientation object reference.  






To do this, having selected the duplicated component object, go into 'Edit Mode' and then select one of the representing faces of the object (that the viewport plane will be orthogonal to) and then under Transform Orientations in the Properties box under 3D view, select the '+' button.  



Enter a name in the 3D Tool Shelf (left side of the 3D view...if it is not opened toggle View > ToolShelf ) for the given Transform Orientation.  For instance, my Transform Orientation named 'a' is shown. 


 Now the Transform Orientation named 'a' is applied to the object overall if go back into 'Object' mode.


 This is important since this will allow us to transform the object component's geometry to match are desired Transform Orientation which is correspondent to our Global coordinate axis.  Next, select Object > Transform > Align to Transform Orientation.


  Now the Component Geometry may have been further rotated in a direction we don't like.


  We can remedy this by going to the 'Properties (tab) > Object tab > Transform : Rotation. 


 In our case, this component geometries rotation is relatively simple since it is restricted to one axis so we can change the sign of the rotation so that it is opposite of the existing value...(e.g., was 15... something degrees change this to -15.... something degrees). 


 There we fixed the rotation.  With more complicated rotations you may have to permute sign changes to get the rotations right for flattening the component axis to a 'Global' coordinate axis.   In any event we verify that the object is perpendicular to the 'Global' axis.  


Next,  a 'Top Down view' (numpad 7) aligns the selected and now rotated component into an orthogonal position relative our desired frame, or according to the rotation of the object relative the global axis you will want to position your view port (with a numpad 7 and then 6, 4, 8, or 2 keys) a view port position such that your view is perpendicular/orthogonal/90 degrees relative to the components projection (show picture).  


Next, we will need to scale the dimensions for rendering resolution in Blender.  Higher quality blueprints might use something like 300 dpi (dots/pixels per inch), in any event, you will also need to use the objects dimensions.  Optimally when you are designing your object, you have set and used a real world unit system (like 'Metric' or 'Imperial') before hand when designing your model especially as it is to be translated from virtual to real world mock up.  Thus you will have wanted to have enabled under the 'Properties (tab)' > 'Scene (tab)' > Units ( metric or imperial) and having chosen a scaling factor appropriate to the design level work that you are intending.  

Modeling tip:  I recommend before you even start modeling your 3D object setting this using the generic default cube pretending that at least one side of the cube represents the overall scale length axis of at least one axis of the object that you are working.  Thus if you have a rectangular box object that is 12.5 inches you'll want to toggle into 'Edit mode' on the Cube, and enable in View > Properties (3d view) > Display : Edge info (toggled on).  Now having selected an edge on the cube, toggle the scale factor (as mentioned above) until the edge length reads in the vicinity of an overall desired dimension length on at least one of the axis as prescribed.  

In any event (from the tip above) you should have a reading on at least one axis of the overall length of the component object  in terms of real world units (either metric or imperial).  You will need to record this (favorite notepad, or google docs or someplace where it can be referenced when you need to appropriately scale the object in a favorite photo editor program, and secondly you will use this when determining the necessary rendering resolution for your bitmap file.  As state 300 dpi is used for higher resolution blue printing work (likely for our purposes), so for my component at 12.5 inches width I need, 300 pixels/inch*12.5 inches = 3770 pixels on one dimension axis and probably 300 pixels/inch*5 inches = 1500 pixels on another axis . 


These are entered in the Properties (tab) > Render (tab) > Dimensions > Resolution (x and y) respectively this need be correspondent appropriately with the viewport rendering capture as related to the component geometry as necessary ( in avoiding clipping or rotate the views port (using the 4 or 6 keys accordingly) so that it is 90 degrees relative to present position in remedying the problem. 

Toggle the 'Toolshelf' off relative the 3D viewport (if it is shown, View>'Toolshelf') and toggle the 'Properties' off relative the 3D viewport (View > 'Properties).



Next, Shift + B allows you to frame the selected object in the viewport to desired dimension (don't forget padding your resolution for a few exta pixels in accounting for a little space for the rendering edges.  This way you don't have to get the scale of the object exactly to length of one axis when rendering it.  


You'll likely under the Properties (tab) > Render (tab) > Dimensions > Resolution (set the percentage to 100 percent).  

Make sure you are in Orthogonal view (numpad 5) image will appear flattened relative a projective geometry view.  

If all looks good, select Render > OpenGL Render Image.  



Then name and save this.  

You'll repeat the process mentioned above for 'skew' geometric components (in rotating them inline to global axis) by the duplication and rotation procedure indicated above, or for component geometry already setup for 2D projection viewing (with an orthogonal view port plane relative to the desired geometric projection plane...remembering to center the object in the viewport by pressing '.' then '7' for top down and then using numpad keys 4,6,8, or 2 to rotate the viewport to a given desired view and then Shift + B to scale the object in the viewport as necessary (in nearly filling at least the desired coordinate axis).  Don't forget that when you have component objects that have different lengths you may want to recompute the rendering resolution x and y pixel values with scale length sizes relative to 300 dpi (for higher resolution blue print work).

Thursday, February 25, 2016

    Though if your mind is actively drawn to an attention that it were never alone which it seems inevitable that it weren't, and if in such a landscape it were as likely alone, there isn't anything forbidding of discovery only vanishing.

Prolific.  

Chronology of space, yes, it is understood.
Vanishing minds gives rise to the possibility of any new possibilities that weren't given of old consistencies though these consistencies seem to rise again and again.
That common experience withers apparently, or that one supposedly tires.  
The direction of time.

Meaning given from all this continuum.  This moment that leads into the next, into the next where one had transitioned from the sense of everything that one knew where given by all the following assumptions made that may or may not have been so.  The utility of the cloth on the table is there as it is passing from one day to the next, from one table to the next, to the next and given by all the observations made that regenerated some thought of the world coexisting with this action.  That world that is lived upon, and breathed upon and has made every sources of an action leading into another action which brings about the dwindling of memories before it.  Though likely in review all this one should wonder were given to much omission.  Life could be as selflessly spent gazing at a waterfall.  


Tuesday, February 9, 2016

  The cue to leave were given so many times over, and even so, you wait around given a curiosity to see what they might do...but one could be as likely ever disappointed in the days that revealed nothing more than one's supposed anonymity in the world.  Though I could offer at least, there is obscurity for future.  That remains obscure in mind in comparison to the condition that one should arrive at in time.  Do we at least sense that there is hope given by this obscurity?

In clarifying I am also not so impressed by the certainties seemingly given...should I be impressed by supposed 'solitude'?  Should I be impressed by the conditions imposed by a given society or all civilizations as a whole?  Should I be impressed by these sorts of 'absolute' certainties?

Sorry I won't bother another so much.

Scapegoat has already been posited with all the pretense of abandoning as in the customary change of decor, or in such an age, all the drama shifts with the new kingdom of four or more years.





   I don't know what is more of anything that weren't anything the same the day before.  That is given by the day before the previous day and leading into the abrupt discontinuity of today.  Today is the day when apparently all is changed, the day when resounding choir focuses imagined doubts and naysayers, all that were in time given by possible elimination, that doubt which should have coalesced and culminated.  This discontinuity isn't any worse, however, than the past, not so much in the excusing and lead up, neither so much into the same conditioning work that has one going about one's business of the day any less differently as likely angry or less angry.  There will be likely days that are shown by nothing more than tyrannical populist scripts as it were in the past...as it has been repeated one should imagine so many countless time in history without exception.  All is a matter of conditioning so long as one were as likely walking, living and breathing.  All is a matter of survival in a way though admittedly there is perhaps any likely ease.  I wonder, "Do they assure you now that they raise the temperature of the crab in a pot?"  And that, for the sake of their vanity and pride likewise, this has been stated already so many times over.

    From a given perspective, I don't see much changing at all.  That is whether one were supposed to be convinced of anything different that weren't all the same as in the day before.   About the day one goes about one's business generally while the disconnected blather of media conjures any way to insinuate itself mechanistically all the same.  If I were awaiting the kind fortune of others and saying otherwise what should I have in store...having died in the same cold reclusive way that other silents have been consigned in fate?  Yes, but it is likely all the same, and what care is there in speaking into the wind?  Speaking into the wind could be given to this desire.

I've heard the term as absurdly and strangely as, 'All of the universe is governed from one's room.'  Doesn't it seem strange in this way?  And that is how absurd existence is at times, isn't it?  I don't imperil faith anymore than having existed and imperiling faith by self existence.

DESIRE TO CONTROL...DESIRE TO CONTROL...and if it isn't control everything is re spun in a new light...which leads to something similar...

Saturday, February 6, 2016

Cosmological selfie is extension to that word 'post modernism' I think.

If you watch Solaris, nothing more than the pretense that Clarke has in mind for the conspiracy that humanity must protect itself from dangerous ideas that it can't handle, unless you were Native American or of some tribe regularly in 'contact'.  Yes, and to a degree nothing less than one might imagine having been visited by the 'grand inquisitor' given to the hefty hand of accusation, or generally as one would understand given to certain tabloid reduction.

Though I am wondering of that 'knowledge' that seemingly puts one into further seclusion.  That is in having learned that the rest of the intelligent universe, save humans alone, blew themselves into smithereens.  Fear and paranoia rests, by the closer midnight hour, of all the same urgency that were stated decades before.  Ever certain though of this existential essence might have been en grained in a given moment in time...this moment in time is where the shadow of a millisecond of the cosmological clock works upon the human minds ever certain presence in believing.

Given all the emptiness of space, even while Earth could be wrecked into oblivion.  It is 'what you do with that knowledge' that makes us so privileged.  Doesn't it feel anymore the invitation towards something?  One has the sense of the demand of mankind in 'free willing' itself over the precipice.  
Uniqueness is gone in such a moment..at least not relative to the rest that pooped out when everything were supposedly just getting started.  That last 'sacrilegious grain of truth' came out all foul mouthed, 'This planet was a real shit hole anyways...'

'America used to be great you know'.

Oblivion

 Between the fascination of an upcoming pandemic ridden college football season, Taylor Swift, and Kim Kardashian, wildfires, crazier weathe...