As an aside, it occured to me that this thread is an example of the meaning of my signature quote from Dickens. Thanks again to everyone. I'm very encouraged that this will come together quickly from here.
Posts made by August
-
RE: Camera Rays wanted
-
RE: Camera Rays wanted
@tig said:
The 'line tool' example rb script is perhaps as good as any to start with - you should have that already...
Thanks. Your suggestion about validating the vector should be useful too. I'll have it kick off a msgbox.
Forgive me if my attention to this is sporadic. I do appreciate all the help.
August
-
RE: Camera Rays wanted
@chris fullmer said:
... I have little to no experience with conctruction geometry ...
Pick my jaw off the floor! Given how much of your code, Chris, I use in contructing my own geometry, to use a totally geeky metaphor , that strikes me like Yoda saying he's not very good with a light saber. Sorry.
-
RE: Camera Rays wanted
@tig said:
... you need to set @ip=nil before it's set by the picking ... You need to get the camera immediately after you click on @ip, otherwise you'll get an old camera.eye being used ??
Ah Ha! That explains why sometimes I seem to only get one line. It must be using the old @ip and therefor I'm getting the same line constructed with each click, no matter where it is. In this scenario, I seem to get one line with each re-invocation of the tool.
Separately, but similarly, the visible line that does not go through the current camera eye, must be using the older camera eye.
Definitely some issues to explore.
All my links to Ruby reference sources are stuck on my dead computer and I had not begun to use them enough to have them in my head. Can someone point me to where @ip is well described?
Thanks,
August -
RE: Camera Rays wanted
Foo, I'm not getting the
vector
defined properly.I'm modifying Chris' code using TIG's suggestion. Chris provides two points to
.add_cline
and I'm taking those two points and trying to make avector
from them, and then make acline
from thecamera.eye
point and thevector
.Chris' original was:
def onLButtonUp(flags, x, y, view); Sketchup.active_model.active_entities.add_line(@ip.position, view.camera.eye); end;
And I changed that to:
def onLButtonUp(flags, x, y, view); vector = view.camera.eye.vector_to(@ip.position); Sketchup.active_model.active_entities.add_cline(view.camera.eye, vector); end;
Only something is wrong. The first time I click I get a visible
cline
(i.e., it's not going through the camera.eye) and after that I get:Error; #<ArgumentError; Cannot create unit vector from zero length vector> D;/Program Files/Google/Google SketchUp 7/Plugins/LoS;10;in `add_cline' D;/Program Files/Google/Google SketchUp 7/Plugins/LoS;10;in `onLButtonUp' D;/Program Files/Google/Google SketchUp 7/Plugins/LoS;10
(
LoS
is the new, modified version, Line-of-Sight.)Obviously I'm thinking that
@ip.position
is a point, and this error is suggesting that it's not. I don't know the magic in the@
and I suspect that's the source of the problem.But if I can create a
line
or acline
between those two points, why can't I create avector
using them?Obviously I'm missing something, but what?
Thanks,
AugustP.S. The forum [code] block indents lines that start with two spaces properly, but does not indent lines that start with four spaces. How do I fix that so the [code] block displays properly?
-
RE: OMG! fur plugin is AMAZING!
As inspiration to take Make Fur in a totally different artistic direction, some of the sketches in this sketchbook make me think of Make Fur and Component Spray.
Here's the link to the whole sketchbook and a sample image from it is attached below.
As Jean says, Just Ideas...
-
RE: Camera Rays wanted
@tig said:
If you give the second argument ... starts at point1 but be infinite otherwise, ... make it infinite in both directions ... or to make it infinite from an end point towards the 'start' ...
Thanks TIG,
Chris' methodology will give me the two points, your info about using
nil
will let me get an infinite line (so it doesn't matter aboutview
), and I have a workable UI without worrying about menus.That gives me lots of stuff to experiment with plus an expectation that I'll be back to my drawing project quickly.
So I'll take a moment to get back to what this is for. I did not explain it well the first time and Chris was probably not the only person who was confused, so I'll try again.
In a way, it's like trying to design a 3D trompe l'oeil construction. All that matters in one sense is that everything be on the required lines-of-sight. The construction lines give me that.
I have a 2D sketch of what I want my result to look like when it is integrated into my 3D model. I'm trying to duplicate the curves of that sketch as sweeping 3D curves where nothing is on a flat surface (except in the sense that any two adjacent segments define a surface).
Is is turning out to be very hard to construct. I have to keep swapping back to the original viewpoint (thanks for Scenes!) and changes do not always go the direction or have the magnitude that I expect. Sometimes a little nudge with the mouse moves something way off into the distance.
With this tool, I will be able to draw a polyline that goes from ray to ray, and as long as it hits all rays in the correct sequence, it will look the same from the specific camera viewpoint. Thus I can slide the vertices of that polyline along the rays to get whatever form I want that is reasonable from other perspectives while leaving it the same from the camera's view. That should simplify the process by an order of magnitude or more. I'm thinking I can use Color By Layer to tell the lines apart.
Again, thanks to Thomthom, Chris, and TIG for all your help.
August
-
RE: Camera Rays wanted
Thanks TIG,
@tig said:
You can substitute
add_line
withadd_cline
as they both take two points.
[Glad to see Chris is using my single-line snippet method - although yourload'ray'
idea is good]Thank you.
I finally remembered that (obviously) I needed quotes around the file name. I changed the filename to
ray.txt
so that I can open it quicker for editing instead of always having to pick my text editor from a menu.After the string (the above or Chris's or Thomthom's long single-line snippet) is in the console window, then changing to the new tool is a simple matter of clicking on the Ruby Console, pressing Up Arrow and hitting return. The tool is active until I select another tool.
That's a pretty easy UI for being able to use a temporary tool. The minimum size of the Ruby Console does tend to get in the way a bit.
I've attached an image that has both
_line
s and_cline
s.When I asked for "construction lines" I had in mind the kind of "infinite" lines you get from the Tape Measure tool. ThomThom's
_cline
s are like that, with the addition of a construction point at the camera location. Substituting_cline
for_line
in Chris's version produces clines' that are finite at both ends.There is a big difference in the operation between
_line
s and_cline
s. Using_line
s, if there is no object, the inference will be to the ground plane below the horizon or to the red/blue plane or the green/blue plane above the horizon. If there is an object,_line
s can reference a surface.In essence, the inference point is wherever the Rectangle tool might try to place a corner or where the Rotate tool might try to place its center.
Using
_cline
s, the inferences can only be to the axes or to the edges of an object,_cline
s do not appear to be able to reference a surface.So that limits the
_line
version to the nearest "octant" (half a quadrant) and limits the_cline
version even more.I can work with either at this point, simply by placing surfaces or edges out past my working target area/space that can be used for inferences.
In the long run, for other situations where I have wanted a tool like this (e.g., some tricky PhotoMatch problems like tree trunks), I'll probably want infinite
_cline
s (at least one way, but it seems I have a choice between 2-way infinite or two-ended).I think that's going to mean getting an
x,y
,c.eye
-to-screen vector fromview
as I suggested previously. A point and anx,y
vector worked in Thomthom's quick version so that should allow me to generate_cline
s whether or not there is an edge to inference.Thanks again for all the help. Banging around on this is a nice distraction.
August
-
RE: Camera Rays wanted
Thanks Chris,
@chris fullmer said:
It does not entirely make sense based on the description of what you need it for.
I had a hunch that my description of how to use it to visualize where the polyline should go, based on projecting between the camera and the background/watermark, might be a little confusing. I kept getting confused just trying to visualize it enough to place guide planes to draw on.
@unknownuser said:
But you just want a tool that draws a line from the camere eye to a point you click on?
Actually, I asked for a construction line, not "a line". But a line to an existing something was a fall-back and I'll take what I can get.
Thomthom's version creates a
cline
usingcamera.eye
for a point andcamera.direction
for a vector.At first I thought that I might be able to just change
add_line
toadd_cline
. My thought was thatview.inputpoint(x,y).position
might be a vector because it takes screen coordinatesx,y
, but a line cannot be drawn using a vector and a point as arguments, it will need two two points, so for@ip.position
to be a point, thenview.inputpoint(x,y)
must return the 3D position of whatever is under the mouse at screen positionx,y
.A
cline
would definitely be preferable, so I would need a function that returns anx,y
screen direction from the camera from a 3D postion returned byview.inputpoint
. Or maybe there's a method forview
that does that in one step. Thinking about it another second or two, a method ofview
usingx,y
makes sense, and then I would not need an object under the cursor just to throw away itsz
position.I'll look up
view
methods (unless you have it at your fingertips?)@unknownuser said:
Here is a one-liner that will do just that.
Thank you. I'll give it a try.
@unknownuser said:
I even made it use inferencing and draw the inference dots onto the screen for you.
Is that the
onMouseMove
function? I don't grok the@
, is an operator or a convention or what?@unknownuser said:
Let me know if this is not what you had in mind.
Not having tested it yet, it looks like it's getting most of the way there. It does not look like it draws a ray into empty space but rather requires something to exist under the mouse, but either I can recode that or just put in a bunch of temporary lines and use their endpoints.
@unknownuser said:
OH, and one note about the script. The line that is drawn is not visible until you shift the camera because it is shooting exactly out of the location of the camera, in the direction the camera is looking. So run the code, then lick where you want and orbit to see the line that was drawn.
The need to orbit makes lots of sense. That's where I would be using the results.
@unknownuser said:
If you need this script to be more easily accessible, I can put it into a menu.
There are examples of adding functions to menus in the
Examples/*.rb
provided by Google and elsewhere. You can leave this as "an exercise for the student" unless you get inspired. If I get stuck, I'll ask. I'm sure there are lots of folks who can help with that piece.@unknownuser said:
And remember, this is a single line of code and should be pasted into the ruby console.
I've saved it as [ruby:3qi7vzlz]Plugins/ray[/ruby:3qi7vzlz], no [ruby:3qi7vzlz].rb[/ruby:3qi7vzlz] suffix. I think I can just type "[ruby:3qi7vzlz]load ray[/ruby:3qi7vzlz]" or "[ruby:3qi7vzlz]run ray[/ruby:3qi7vzlz]" in the console. I also added line breaks and indents so I can follow it. I couldn't remember if Ruby requires semi-colons at statement/commend line ends, but I seem to recall that they are optional, Ruby being a very Tim Toady (TIMTOWTDI) kind of language, so I left them in.
If my comments above make sense to you, or anyone, and you get inspired or just feel like playing (if it's play for you) please feel free.
I probably won't be picking this up for a few days. I'm flying to Denver on Sunday (with Saturday being the day before Mother's Day, there are NO seats available) in hopes of getting to Colorado Springs before my Mother passes. She appears to have had a stroke this morning and was already not well.
Thanks again, Chris and Thomthom, and I will be checking back later.
August
-
RE: Camera Rays wanted
@thomthom said:
oh wait.... that might not be what you asked for... hmm... ok... need to sober up.
Close though. It adds a construction line from the camera through the center of the camera view (c.direction), so it has the basic pieces.
I want a line through wherever I click with the cursor, or wherever the cursor is when I press a hotkey. I think that should be doable.
Worst case, I would select an existing (maybe temporary) endpoint, but a click in empty space should provide sufficient information.
How do I get the direction from the camera to the cursor or to a cursor click? Ideally, it's starting to sound like I would need to create a new tool that accepts the mouse click.
But a quick-and-dirty should be doable for a selected emdpoint. How to I get the direction from the camera to a selected point?
-
RE: No Fudge With Free
@honoluludesktop said:
August, You wrote "if you're doing production work, you're a pro, get the Pro product and make things easier on yourself." Guess that was a misstatement:-) I don't think anyone here advocates using SketchUp Pro for free, or "student software" commercially.
Hi H.
I was not saying you "must" buy Pro, that was your term. I certainly meant no implication that simply because one is working professionally that one has an obligation to purchase the professional version of something (unless that is a license requirement, but that license issue had not surfaced by the time of my statement you are taking issue with).
I was intending to suggest an attitude that if the free product becomes too time consuming for commercial work, there is an alternative solution. If muddling through with the Free version is cost-effective for you, by all means, do as you please. It is truly your business.
Brooke started out asking if anyone knew of a solution to his frustration with a problem for which his only known solution was Layout. I've been trying to give him the best strategies, ideas, and workarounds that I know of or that I can come up with, including ideas that, after some development work, would (in my opinion, as far as I have understood his problem) solve his problem for the long-term in single button clicks. He is not satisfied with any of them, yet he says that he does not want Layout.
I think that is an accurate summation of the thread so far. I am not insisting that Brooke buy Pro. I am suggesting that it may be the easiest solution for him and his business. I am only suggesting.
Beyond that, I'm out of ideas. I have put a lot of energy into this thread because I am very interested in ideas that provide Pro features, Layout-like features, etc. for SketchUp Free. I am a bit disappointed that Brooke has rejected all of my ideas out of hand, mostly saying "that won't work for me" while not explaining the conflict, thus not giving me any deeper understanding of his real problem.
I think I have at least a limited understanding of the problems facing an architect when using SketchUp. I used to be a professional draftsman, mostly doing installation diagrams for hospital linear accelerators (a B.A. in Physics does not, on its own, open a lot of doors) in the pre-CAD days.
But eventually I must stop fighting the wind. I hope that someone, if not Brooke, has gotten, or will get, something out of this conversation. I got an idea or two that I might pass on to someone else and/or try myself.
For what it's worth, I hope this helps,
August -
Camera Rays wanted
I have searched and come up empty handed.
Is there a plugin that will draw a ray or construction line from the camera position through a given point (i.e., clicked) in the image?
I am trying to eventually have a 3D Bezier path that looks like loose loops of electrical cord.
I have made a print of by SU image and sketched in a design. I have scanned that and placed it as the background watermark so that I can draw over it. I have positioned the camera so that the existing SU objects overlay their counterparts in the print+sketch. (Martin's recent Camera Data would have been useful, but I didn't find that until searching on this problem.)
To draw a polyline as a first-approximation of my final curve, I have been placing surfaces at various angles and drawing polyline sections on those surfaces.
I can select lines on multiple surfaces and explode the curves and then convert that to a single polyine and apply a Fredo6 cubic to that. So once I have the polyline, even in sections, I'm nearly home.
But creating the polyline is time consuming. While orbiting, rotating guide surfaces, switching back to the scene where everything lines up, etc., I had an idea.
If I had ray lines from the camera that passed through points in my target (from the sketch) then I could see where I needed the polyline to be when I was not looking at things from only the one position. I could move endpoints along those guide lines and the process would be MUCH faster.
Does that make sense? Can anyone help?
Thanks,
August -
RE: [Plugin] Camera Stats
@tig said:
A
frustum
is ... the camera's "view-box", in which there are objects that you will see...What most newbies don't know about are the near and far Clipping Planes. Anything closer than the Near Clipping Plane or farther than the Far Clipping Plane will not be displayed. If you could show things that were arbitrarily near or arbitrarily far, the math would require too many decimal places (or bits in the CPU).
-
RE: No Fudge With Free
@honoluludesktop said:
Why must one buy something that is free, just because they use it professionally? ...
Google does not care if you use the free version of SketchUp professionally.
Some companies do. Microsoft has a less expensive version of Office, the Student and Home Edition, that specifically says "non-commercial use" in every title bar on the product. Others specifically say in their license agreements that for commercial use you must buy the product. Sometimes you are on the honor system for that.
Why must one? Because it's theirs. How they share it with others is up to them.
Usually, for small products, if there is a free version it is limited in some way, sometimes in very frustrating ways like not being able to save your work. More and more, the free versions are becoming useful, standalone products but you must pay for extra features.
Acrobat Reader is free, but to make comments on a PDF and share and combine those comments with and from several people, you must buy Acrobat Pro. It used to be that you needed Pro to create a PDF, but Adobe made the PDF Specification public and now there are various free or cheap ways of making PDFs so Adobe is focusing on things like shared review and other features of PDFs that are expensive for the knock-off folks to develop.
I applaud Google for how much functionality they provide in the free product and how the features you must pay for are generally features that you would only need if you are using the product professionally. Thus, in general, the folks who are making money with the product are supporting the availability of the free version. That may be way too "socialistic" for some, but I find it elegant and very progressive marketing.
I am not telling anyone that they should buy the Pro version of SketchUp. Neither is Google. But fortunately I have "access" so I know what it can do. I'm trying to help by offering money-saving workarounds. Unfortunately, workarounds are not often time-savers. If they take too long for your needs, then maybe you need to consider a purchase. It's a simple choice, but, thankfully, you do have a choice.
I hope this helps,
August -
RE: No Fudge With Free
I think I'm catching up with you.
What I think it comes down to is that the section is accurately displaying a section through your drawing, but there are elements in the result that are annoying and/or confusing. Altering the drawing so those bits are on the other side of the section plane is not an option because they have meaning in other contexts. That's why making them into Hidden Geometry is awkward. You don't want to keep toggling settings in different views as you work through the drawing.
You don't want to have to create a new layer with a name like
0 wall foundation / crawl - EXIST - footings, posts, misc to remain - HIDE in XsecC
and then uncheck that in the XsecC Scene and make sure it's checked in all the other scenes. If there are six bits that need kludging in each section view, those could potentially be in six different layers so that's adding six more layers to the list for each section view that needs tweaking. This approach could easily add a couple of dozen extra layers to the list.
In Layout, because you are working in 2D, you can create masking bits that hide the offending pieces, and those bits are only in that view because they have been added to that view in Layout and are not part of the SketchUp model. And Layout allows you to work primarily in the context of your presentation drawing and dip in and out of SketchUp to make changes as needed, but always returning to Layout to see the final product in progress. You cannot create the same kind of masking bits in SketchUp because their edges will show and that defeats the purpose.
I agree, the more I work with Layout, the more I can see it as a very attractive tool for professionals. I'm very lucky that I have access to a system with Layout on it that does not have a timer ticking. It would be nice if you could have Pro and Free on the same system so the Pro trial timer would only tick down when you were using Pro features. Darn. They get me addicted to it and them make me pay to keep using. Or make me dependent on the generosity of friends. (SketchUp Addicts Anonymous, anyone?)
Maybe I should go over to the Layout forum and post a great big THANK YOU to all those folks who paid for the Pro product and thus supported me and everyone else who are having so much fun, amd even making money, using the Free product.
But I do get your dilemma. The "easy" way does seem to be a standing "edit" of a sort in a 2D program that modifies the image from SketchUp.
That leads me to something like MS Word. You can work in SU, export the current image, swap over to Word, click on the previous image there, go into it's properties and update/change the file that is the image source. I haven't experimented with the workflow, you might have to add a "Send to Back" operation on the image after you reload it. I'm not sure, but I think when you import an image into Word, you have the option of linking to the original file rather than keeping the data in Word, so you could Save in Word before you go to SU, then Revert in Word after you have exported the SU image and Word would automatically reload the new version.
Word will certainly let you add little masking bits that are invisible to the reader in the final version. You can lots and lots of Layout kinds of things in Word (but not dimensions and no click-through into the SU file).
All of the multiple steps in both SketchUp and Word could be automated with something like AutoIt3 (free for Windows), MacScript (free, do I have the name right?), or QuicKeys (Win and Mac, $120). Or Ruby in SU and Word VBA (both included with their products). Using any of these automation tools could get the in-and-out cycle down to just a couple of hotkey clicks.
Or you could go back to my rejected suggestion at the top of this post and decide that adding 20 extra layers is worth $25 per layer that you aren't having to spend on Pro, and worth an amortized couple of hours per layer of programming time to get AutoIt or MacScipt to work for you or even $6 per layer and still some programming time with QuicKeys.
You have several options, nearly all free, all very doable, with varying degrees of difficulty and usability.
If you go the max-DIY-automation route, Ruby and VBA or AutoIt or MacScript, you might have a package that you could sell 25 copies of for $20 and pay for a copy of Pro.
I hope I've provided a perspective or a suggestion that helps.
August
-
RE: No Fudge With Free
I'm waiting to hear why Layers and Scenes doesn't work for you.
-
RE: No Fudge With Free
@brookefox said:
Hiding is not a preferred option, ever, ..., but the little cut piece is impossible to make sense of and so is not welcome.
My preference for your kind of problem is not for "hiding" in the sense of hidden geometry like the lines that defines the faces of what is to be a "smooth" surface. Rather I create a Layer, sometimes called "HIDDEN", sometimes part of a series of layers that have names more meaningful to the context. I just assign that layer to things that need to be occasionally hidden and then turn that layer on and off. That is much more convenient and controllable compared to the all-or-nothing nature of "Show Hidden Geometry."
You sound like you're pretty familiar with SU, but Layers is something that often trips up people who have a 2D background. In 2D, the operating metaphor of Layers is stacked sheets of vellum or mylar; you can arrange the order of the layers and control what is on top of what. In 3D, that ordering has no meaning.
Many 2D programs that have recently added 3D have that mixed metaphor where layer order has meaning in 2D but not 3D. AutoCAD is one such. Since SU has no 2D mode, its layers are only 3D so there is no order. In that sense, calling this visibility control grouping parameter "Layers" is probably a misnomer, but the term is likely here to stay.
Using Layer assignments (not "placement") to "tag" objects and then using Scenes to pre-define sets of Layers is a powerful technique in SketchUp and may be the solution to your problem.
@unknownuser said:
... [if] you ever tried to do architectural production work with free you would immediately withdraw your ego from the stake, or give it up. ...
Well, that is the difference between Free vs. Pro -- if you're doing production work, you're a pro, get the Pro product and make things easier on yourself. I never claimed that any workaround would be easy or something that someone would do hour after hour, day after day.
For me, the difference is impossible vs. doable, with focus on SketchUp itself, not all the bells and whistles of Layout. I have spent some hours with Layout on a couple of different projects and I have not seen anything that cannot be accomplished with free tools, just not as easily.
So far, the only thing that is impossible to do any other way has been creating Styles without Style Builder. There have been some Ruby Plugin attempts at things like dotted and dashed lines, but they are not completely satisfying because they create dashed and dotted geometry that then foreshortens and changes with perspective.
I hope this helps,
August -
RE: No Fudge With Free
@brookefox said:
.... I was wondering if I were missing some capabilities of free that could help me do what I want to do. ...
I like to think I'm pretty good at figuring out workarounds. However, I really don't understand the original problem. In part, I think, that was because you did not distinguish between SketchUp tools and Layout tools, calling the combination "Pro".
What I've gotten so far is that you would like to be able to make a section cut, but sometimes you want to edit the result. You can do that editing in Layout by, for instance, putting a white box with white lines over the bit you want to mask out, but you have not figured out how to do that in SketchUp alone. You hint that just hiding the offending bits is not a solution, but I don't have a clue why.
I would suggest that using a different app than Layout for image assembly, e.g., Word, OO Write, The Gimp, etc., would let you do Layout-kinds of things. Yes, updating is a little more awkward than using Layout, which can do it in seconds, but it usually at most only a couple of minutes for each round trip. I used to program on punch cards where it took 24-hour turnaround in the Computer Center to find out that you'd left out a semi-colon. You get good at checking your work and making sure you know what you're trying to do in each round rather than making repeated guesses.
If you would be willing to take another pass at extracting and describing the core limitation that you are struggling with, I will take another pass at looking for an effective workaround.
I have only limited familiarity with Layout, but I do have access to a system with Layout on it, so I could experiment to understand your goal. I do get that you're looking for a workaround that can be used with SU Free, but I don't yet understand the real issue. I hope you can clarify that for me.
Since I often make the claim that one can do just about everything with Free that one can with Pro, I have a small ego stake in seeing if I can make that true in this case.
I hope this helps,
August -
RE: No Fudge With Free
@brookefox said:
I was referring to the dearth of 2D tools in free, as compared esp. with Pro / Layout. ... I believe the text abilities of Layout facilitate 2D production work far beyond that which can be achieved handily with Free. It is positioned as a viable 2D production tool as well as 3D modeler. ...
@unknownuser said:
... If I had ongoing or extensive production needs I would have given up long ago. ...
Thanks for the clarification.
Yes, Layout provides extensive tools beyond that provided by the free version. As you said, the "abilities of Layout facilitate 2D production work far beyond that which can be achieved handily with Free."
But the key word in your statement is "handily"; there are other tools that can be used to accomplish the same ends. For instance, you can export images from Free and assemble them onto a page in MS Word, OpenOffice Write, The GIMP, or a large number of other programs that are free or which you may already have for other reasons. Need DXF or 3DS output? Export as KMZ and import that into a free third-party product and export in your required format. I don't know of any Ruby plugins that require SketchUp Pro instead of Free because the products are, for the most part, identical.
Using other programs to assemble a finished page, you will not have the built-in updating and integration between Layout and SketchUp, but there are workarounds. Sometimes the workarounds are tedious, but they are not prohibitive. It takes a little more time and you have to think more.
You want it easier, faster, and more automatic? Buy Pro. Can't afford Pro? Use the workarounds. Want to create your own Sketchy styles or create Dynamic components? Dynamic Components can be programmed in Ruby; the DC plugin mostly provides an Excel-like interface for non-programmers. Styles I think you're stuck, but custom styles do not have much productivity impact -- and there are add-on styles you can download.
I believe that Google has drawn an elegant and very fair dividing line between the free version and the paid version. Other products deliberately cripple their free version to force you to buy the product before you can do anything but try it out. You cannot print, or you cannot save a file larger that 2MB or an image larger than 640x480, or you cannot have more than 99 objects or 25 variables.
In Google's case, all of the limitations of Free can be worked around and the free product has all of the drawing tools, allowing you to be VERY productive on the free product alone. They don't even barrage you with startup screens that are full of advertising. They are being very elegant and clean about it.
If you have "ongoing or extensive production needs" or if you are billing clients for the time you spend and need to minimize that, then buy the Pro version.
Before Google bought @Last, there was no free version. I believe that Google has done a great service, a true benefit for the common good, in making SketchUp available for free. I'm sorry that they have disappointed you, but I think the limitation is yours.
I hope this helps,
August -
RE: No Fudge With Free
@brookefox said:
By that I mean, ... in some small part fudgability is what Pro and Layout bring to the 2D table.
Could you explain a little more? I have been under the impression that when it comes to simple drawing, not including Dynamic Components, Free and Pro have the same tools.