[0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
chrisb
Veteran
Posts: 54177
Joined: Tue Mar 17, 2015 9:14 am

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by chrisb »

Mongrel_Shark wrote: Mon Aug 06, 2018 1:23 am P.s. I know there is a curved text macro (by Mario I think?) that I haven't used yet. Would that be better in the case of curved surfaces?
That's what I would recommend.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

Ok so whats the best way to get the output from Circular text macro into a PDN body?
chrisb
Veteran
Posts: 54177
Joined: Tue Mar 17, 2015 9:14 am

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by chrisb »

If you want to apply an operation from outside of PartDesign you can always apply it to the body. You must not apply it to a feature, an error will be shown and problems may arise later, even if the operation seems to succeed.

If you have modeled something outside of PartDesign and you want to continue in PartDesign, you can import the obejct as a BaseObject. Usually you select the object and click the create-body icon. This will prepare everything for continuing your work in PartDesign.

As a general advice you should avoid too much to and fro between inside and outside of PartDesign. Do as much as possible on one side and then switch to the other side.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

chrisb wrote: Wed Aug 08, 2018 12:03 am If you want to apply an operation from outside of PartDesign you can always apply it to the body. You must not apply it to a feature, an error will be shown and problems may arise later, even if the operation seems to succeed.

If you have modeled something outside of PartDesign and you want to continue in PartDesign, you can import the obejct as a BaseObject. Usually you select the object and click the create-body icon. This will prepare everything for continuing your work in PartDesign.

As a general advice you should avoid too much to and fro between inside and outside of PartDesign. Do as much as possible on one side and then switch to the other side.
I'm not having much luck with that.

I want to add text to an existing and complex part. Preferably without using boolean. Because that tends to create issues if I want to change stuff way up in the tree and I have 3 or more booleans etc etc. I see it as a bit of a last resort.

I can't upload the part to the forum, as its got sensitive ip and its well over 1mb. So I have made a similar part for an example. A standard 2" pvc joiner. The original part has almost identical face to put the text on.

I got the text to appear where I need it after trial and error some 50 times over a couple of hours. :shock: :lol: Not too bad for first time.

I ended up with a folder full of individual shape strings, and a SHAPE. Ideally I would like to delete the shape and move the shapestrings into my body as a single entity, ie keep the folder or exchange folder for another container that can go in a body. So I can extrude or pocket the shape strings.

I have tried moving the shape into my body, but that doesn't work right. It just forked my body by placing a clone at the top of the tree. I tried moving the clone to after the tip, but it made a copy and added another fork.....

I do realise I could have just extruded the SHAPE and made it the base feature for a new body. Then boolean fuse or cut as required. But that seems clunky. Is there a cleaner way to do this? Because by the time I add 2-3 lots of text to the part the tree is going to be a nightmare to navigate...

As well as part no, I also need a description, like 2" PVC joiner AU/USA and the company name. These need to be spaced out nicely and ideally easy to adjust because the boss is bound to want me to change something at the last minute..... I didn't include the extra text in file to keep size down and minimise complexity.
Attachments
Circular text body eg.fcstd
(101.65 KiB) Downloaded 34 times
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

Tried extruding shape and placing in body for boolean. That didn't work either. Just came up with an error saying fusion of tools failed.

Assuming its because of multiple solids. Will try making a support pad next.
Attachments
Circular text body fuse eg.fcstd
(380.56 KiB) Downloaded 35 times
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

Still won't work with a support pad. Not sure whats going on.
Attachments
Circular text body fuse2 eg.fcstd
(636.11 KiB) Downloaded 36 times
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

I have a clue whats going on now. Its possibly some kind of placements bug. But there is other weird stuff happening. I don't think its my method (Its always my method, never bugs :mrgreen: )
I can't get the text to fuse to the fitting. But I can get the fitting to fuse to the text. Which wouldn't go very well in my original project. Would really mess up my tree.

When the fuse does work. Previous placement data on the text body is deleted. ie I had it moved 1.25mm on Z so text will only protrude 0.25mm.
After fusing the z attachment for both parts was 0 and the text had moved!! Now I have to move the fitting in its body by -1.25 to get things right.

Something seriously wrong here. Not sure if my method or bug. Seems to be adding the extrude and shape to the boolean as well as the base feature body. Would 2 additive booleans equal a subtractive boolean?
I'm confident on my Booleans method. Select active body, make sure nothing selected, perform boolean....

I'm going to try getting the shape strings in the body again while I wait for someone more experienced to catch up :D

[edit. If you delete or undo the boolean in Circular Text Body fuse3 eg. The pipe fitting vanishes. Its still in the tree, but remains invisible regardless of visibility setting.]
Attachments
Circular text body fuse3 eg.fcstd
(810.51 KiB) Downloaded 38 times
User avatar
Mongrel_Shark
Posts: 138
Joined: Sat Oct 15, 2016 9:54 am
Location: Australia

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by Mongrel_Shark »

Almost success.

Selection_233.png
Selection_233.png (131.6 KiB) Viewed 1201 times
I think if I didn’t use the circular text macro this would have been a lot cleaner, but much much harder too.

I Just highlighted all shapestrings in FcString, right clicked and moved into body. I first tried to attach them to face, but it deleted all other placement data.
So I did it again without attaching and just padded each shape string one at a time. Except shapestring 5. That didn't want to pad and made stuff break. Probably because its a space and didn't actually have any thing to pad....... Took me a while to work out what was going on :? .

I can't upload file as its now 1.4mb. Hope screenshot will suffice.

My only problem is the circular text macro bug which spaces out all letters equally. So it looks like there is a space after every lower case L. probably also with i and 1 etc etc too.
So "blahblahblah" became bl ahbl ahbl ah. Which makes the macro unusable in my book. I pretty much have to re do everything anyway.

I'll have to move each letter individually to fix it. Which makes me think I would have been better off to just place them all manually and not use the macro. Then I could have attached them properly too.


Surely there has to be a better way? Its going to take me weeks to finalise 6-7 parts with part numbers and patent numbers, etc etc. One letter at a time..... If I could use transform tool on a shape string would be much faster... Then I could attach to face and move it all around in a few min. Otherwise I'll have to convert angles into percentages to place each letter at the right angle.... And one part number has to go on a vaguely parabolic dome... FML why did I think a vaguely parabolic dome would be a good idea??? :roll: :cry:
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by NormandC »

Mongrel_Shark wrote: Wed Aug 08, 2018 2:38 am I Just highlighted all shapestrings in FcString, right clicked and moved into body.
That's what I was going to suggest. Generic shapes/compounds cannot be put in a PartDesign Body, only Draft objects can.

Mongrel_Shark wrote: Wed Aug 08, 2018 2:38 am My only problem is the circular text macro bug which spaces out all letters equally.
Why do you think it's a bug? In my opinion the macro simply is programmed that way. You could "solve" it by choosing a monospaced font rather than a proportional one.

Mongrel_Shark wrote: Wed Aug 08, 2018 2:38 am Surely there has to be a better way?
I don't see any in FreeCAD. Maybe it would be faster to work out the text in Inkscape (do you know it?). I'm pretty sure it can make text follow a path, and it probably can space the letters correctly. Then convert letters to paths, import the SVG as geometry, and convert it to Sketch using the Image Draft Draft2Sketch tool. It will convert the paths into B-splines inside the sketch. Trying to fully constrain the sketch would be... inadvisable. ;)

Of course once converted to paths then B-splines, it's a one-way street. If you need to change the next you need to start over.

BTW you could also convert ShapeStrings to Sketches too. I would do this once the numbers, spacing and orientation is done and won't be changed. The advantage is, you can make few sketches so you don't have to create so many Pads. I attached an example modified from your last file.

One thing to know with Draft2Sketch: the objects being converted need to be on the XY plane, or parallel to it - and not reversed like your ShapeStrings are at the moment. I used Edit --> Placement to rotate them 180 degree on the Y axis, then converted to sketches, moved them inside the Body, attached them on the Body's XY_Plane with the "Flip sides" checkbox ticked.

Oh, there's something really weird in your file. In your Body, the features from Pad to Hole002 are all nested one inside the other as if they were Part objects. I've never seen that inside a Body. :?
Attachments
Circular text body fuse3 eg_nc1.fcstd
(579.85 KiB) Downloaded 36 times
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: [0.17 PDN] How to engrave a ShapeString in a PDN-Body

Post by NormandC »

Mongrel_Shark wrote: Wed Aug 08, 2018 1:44 am [edit. If you delete or undo the boolean in Circular Text Body fuse3 eg. The pipe fitting vanishes. Its still in the tree, but remains invisible regardless of visibility setting.]
Yes, that's a known bug, although I'm not sure anybody wrote a proper bug report on the tracker.

To work around it, create a new 3D view by going to View --> Create new view. Then close the old tab.
Post Reply