Engraved sign maker, technique, or plugin
-
Ok Tig I have been that all along also, I didn't know what it was called
-
I like Tig's approach, fast and easy, now if someone could come up with plugin to center text on a face automatically...Here is what I mean, you have a box, you make a text and place it on the face of your box. Right click context "center (object)" X,Y,Z select center "X", and/or center "Y", and/or center "Z".
Much like making a "fence selection" in a presentation program over all the items. Then select left, right, or center, vertically, or horizontally or both in multiple steps. Inkscape call this function "Align and distribute objects".
There is something to keep the RBGs (ruby script gurus)busy for a few minutes. -
Yea.. the actual point for "Center" aligned text is really bottom center.
You can use inferencing to place the bottom center of the text, at the center of the face, then move it half the text's height, in the correct direction.
A "Move Text by Center" tool would likely use the text object's
bounds.center
, SU's inferencing can find the dual midpoint of 2 sides of your panel, if you hold down the SHIFT key after the first midpoint inference pops up. -
@tspco said:
I guess I have been pre picking pushpull all along, even in v7. I have a box "s" and box "z" in a model I want box "z" the same height as box "s", click on box "s" face and pull it even with "box "z".
No.. that is post-pick PushPull.
And yes TIG's tidbits are terrific.
-
Ok Dan I tried this as I understand it, I used the pencil tool as a center finder.
The panel is no problem, the problem is the text object. I grabbed a random serif font, didn't change the text so it reads ENTER TEXT. I picked up component center inference dots. No dots on the "E" characters, and I picked up the center of the"T" characters two centers on the "N, R, and X" one on each "foot".
What I have done in the past to center a text component on a face, is place the component at "eyeball center". Then using the tape measure tool, move in from both sides from the edge of the panel to the widest part of the first, and last letter. Then subtract the smaller measurement from the larger, divide the result by two then move the text in the correct direction, that amount. Well, this technique doesn't work 100% of the time sometimes I need to repeat the procedure. That is an operator error thing. Not working for me right now. -
@tspco said:
Ok Dan I tried this as I understand it, I used the pencil tool as a center finder.
The panel is no problem, the problem is the text object. I grabbed a random serif font, didn't change the text so it reads ENTER TEXT. I picked up component center inference dots. No dots on the "E" characters, and I picked up the center of the"T" characters two centers on the "N, R, and X" one on each "foot".
What I have done in the past to center a text component on a face, is place the component at "eyeball center". Then using the tape measure tool, move in from both sides from the edge of the panel to the widest part of the first, and last letter. Then subtract the smaller measurement from the larger, divide the result by two then move the text in the correct direction, that amount. Well, this technique doesn't work 100% of the time sometimes I need to repeat the procedure. That is an operator error thing. Not working for me right now.A different thought that does not limit you to the SU 3d text. Using a candidate jgp and jpg photo editor like GIMP to edge detect then use WinTopo to convert to a vector file vs raster. You can then open this with SU( probably have to go through CAD first because WinTopo can not export to SU ) and use push pull etc to create the desired sign. Very complex graphics gets problematic.
-
Or use a PNG with a transparent background.
Add it as an Image.
Use my ImageTrimmer to make it a cutout.
Simplify the edges to avoid too much 'pixelation' steppiness.
Explode it to merge with the 'block' geometry... -
To center the text you could also use TIG's CenterPointAll on both the surface where the text will go as well as the text. Then just grab the center point on the text and move it to the center of the face. I would imagine the center of the text's bounding box might not always be the real center of the text, though.
-
Good one Dave! What I did just now (this has become an temporary obsession)
I made my blank 3"x8" sign 1/16" thick, I did the text and used the tape measure tool to place guides at the center-point of the sign blank. then used my most used script centerpoint to place a guide point on the text, which was not as you observed the actual center of the text then moved the center of the text from a side and centered it top to bottom. I then exploded the text object went over a few edges, with the pencil tool. The I pulled up face of the blank another 1/16" to make a nice 3x8x1/8" engraved sign. I will post a pic later today, right now I need to go to work. -
I wonder if there'd be a graphic/scriptable way of determining the visual center of the text. It's been a long time since I did any typography. I'd need to do a refresher on that. I expect you could get it close and then eyeball it from there.
-
What reasons are there, for the text's Bbox center not being the center of the actual text ??
I tried adding whitespace (extra spaces after,) but the tool ignored the spaces.
Then added spaces before the text, the tool seems to include the extra space.
You can see it if you double-click the text before exploding it.
-
Dan, in the case of a word with only ascenders such as 'babble", the center of the bounding box would be shifted a bit higher and a word with only descenders such as 'paper' would have have a bounding box with a lower center than a word such as "man" that has no ascenders or descenders. Those are odd examples and mostly likely there'd be enough letters with both that might average out. Some fonts have much taller upper case letters than lower case ascending letters which could shift the center a bit. Some fonts have descenders that drop lower than their ascenders go up. This would also tend to shift the position of the center of the bounding box.
-
Dave I don't follow your reasoning.
The center of a text object is it's center. Of course it's actual height may be dependant upon whether it has ascenders, descenders, or none, and may dictate how much text is above or below the center.
But, it's center, is still it's center (taking it's overall height into account.)
And then there is the, situation when you create multi-line text objects. (The issue of ascenders & descenders is even more irrelevant.)
So.. obviously any tool needs to get the text block's overall height and width, before exploding, it.
-
Yes, the overall center is the center of the text box. My point is that using that center to place the text may not place the text correctly. As an example, place the following three words (inserted as three separate components) in a row with their centers on the same line: mom, dad and pay. I think you'll see the baseline of each word is at a different height.
-
Dave is right but it might be font dependent. The font shown here is Basic Sans Heavy SF (a Shyfonts font)the text is 1-1/2" high, there are at least 3 different "baselines". The centers of each component is centered using the original centerpoint plugin, centered along a guide (removed).
-
Thanks for posting the example. I didn't have access to SU at the moment or I'd have done it. Probably in many cases, things would average out and it wouldn't be a problem but there's still the possibility of alignment issues. So the best thing would be to locate the text by its baseline instead of the center of the text's bounding box. The baseline would be at the bottom of letters that aren't round. i.e. r, h, k, f, etc.
-
@dave r said:
As an example, place the following three words (inserted as three separate components) in a row with their centers on the same line: ....
NOW WAIT !! You are changing the conditions of the original problem.
Why would anyone in their right mind want to place text using all separate words ??? ... Of course that will cause problems.
1) Use a single text object consisting of multiple words, or sentences, and all of the words will be properly aligned vertically with each other.
2) It's Google's fault because "center" is not really center, nor is it baseline center, it's actually bottom center extents. (Sometimes I shake my head in bemusement, at the way the Google coders did things.)
3) After placing the 3d text component. Choose the Move tool. Notice how Google gave us temporary rotational points, but none is a center point ??
SO ??
We need to ask Google to fix the 3dTextTool, by:
(a) making center the true center,
(b) adding "baseline left", "baseline center" and "baseline right" options,
(c) make a Capital, ascender, descender, independant standard for the Height attribute (so that the letters are always the same size per any given "Height" attribute.),
and
(d) add more MoveTool temporary "grab" points including a baseline center, baseline left, baseline right, extents corners, extents midpoints, and extents center.
-
@dave r said:
The baseline would be at the bottom of letters that aren't round. i.e. r, h, k, f, etc.
Not true ...
-
Ok guys, no point getting irritated. My suggestion is not that important. It falls in the "would be nice to have category".
In a nut shell, I have 5 lines of text, I have a face I want these 5 components, aligned/centered evenly distributed on. In inkscape to do this you make a group of each line of text, and your face is also a group, you select all six objects, click the align center, up down button, then you click the align left right button, all the text blocks are evenly distributed, and centered on the face. -
Why not just type ALL FIVE lines of text into the 3DText dialog, and then they are all within a single component ??
Advertisement