We value your input! Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey
2024-03-01 04:56 PM - last edited on 2024-09-24 10:11 AM by Doreena Deng
As the title says, is it possible to remove the outline around 3D text in the object? I'm trying to add a toggle to be able to show / hide the outline.
Thanks
2024-05-10 01:27 AM - last edited on 2024-05-10 02:09 AM by Barry Kelly
Not a direct answer. Convert the object to mesh morph and play with the Edge settings eg Hidden or soft.
You could have two separate layers to show the hard lines or no outline
2024-05-10 02:26 AM
You mention adding a toggle, so I have moved the post to the GDL forum.
The 3D text object that comes default in the Graphisoft library just uses a 'TEXT' command in the 3D script.
So you can't turn the outline off.
You can however add a PEN command and set a very thin white pen (can't be pen 0 or -1).
You have labelled the post '3rd Party Objects'.
If it is a third party object, it may be scripted differently - but I doubt it, as I don't think there is an easy way to convert TEXT into a PRISM_.
Barry.
2024-05-10 03:59 AM - last edited on 2024-05-12 06:32 PM by Laszlo Nagy
Magic, Alchemy and Incantations are required, when the moon is full and the wind is blowing from.....
or
PLACEGROUP ISECTGROUP{3}(Oversized_Block_Text_Is_Cut_From_Group, Text_Block_Group, 0, 0, 0, 1)
A thin white line becomes a wider white line in a pdf, so i don't use the white line trick.
ISECTGROUP
ISECTGROUP (g_expr1, g_expr2)
ISECTGROUP{2} (g_expr1, g_expr2, edgeColor, materialId, materialColor [, operationStatus])
ISECTGROUP{3} (g_expr1, g_expr2, edgeColor, materialId, materialColor [, operationStatus])
g_expr1: identifier of the base group.
g_expr2: identifier of the tool group.
edgeColor: the color of the new edge when it differs from 0.
materialId: the material of the new face when it differs from 0.
materialColor: the color of the new face when the materialId is 0 and it differs from 0.
operationStatus: status control of the operation.
operationStatus = j1, where each j can be 0 or 1.
j1: generated new edges will be invisible.
Example....
ThreeDeeText = "PLACE TEXT HERE"
GROUP "Oversized_Block_Text_Is_Cut_From_Group"
material "BLACK"
ADD -1.500,-0.00500,-0.100
BLOCK 3.000,0.00399,0.200
DEL 1
ENDGROUP
GROUP "Text_Block_Group"
material "BLACK"
pen 1
MODEL SOLID
rotx 90
text 0.002,0,ThreeDeeText
del 1
ENDGROUP
PLACEGROUP ISECTGROUP{3}("Oversized_Block_Text_Is_Cut_From_Group", "Text_Block_Group", 0, 0, 0, 1)
2024-05-10 04:59 AM
The old "Intersect the text from an oversized block" trick!
I like it. 😄
So the new code for the default 3D text object is ...
GROUP "Oversized_Block_Text_Is_Cut_From_Group"
ADD -txt_len, -Elev_Txt_size, -txt_thk
BLOCK txt_len*2,Elev_Txt_size*2,txt_thk*3
DEL 1
ENDGROUP
!PLACEGROUP "Oversized_Block_Text_Is_Cut_From_Group"
GROUP "Text_Block_Group"
Text txt_thk,0,Elev_Txt_Str
ENDGROUP
!PLACEGROUP "Text_Block_Group"
!! Text !!
Material Elev_Txt_Mat
add 0,0,Elev_Txt_Hgt+Elev_Txt_size*0.5
ROTy -incl_txt
ROTx 90-roll_text
if SYMB_MIRRORED=1 then
mulx -1
endif
pen 1
PLACEGROUP ISECTGROUP{3}("Oversized_Block_Text_Is_Cut_From_Group", "Text_Block_Group", 0, 0, 0, 1)
del 1
del 1
del 1
It is a shame you can't just intersect the text with itself - that doesn't seem to work.
You must have something slightly bigger to intersect with the text.
Barry.
2024-05-10 09:30 AM
Hello JGoode.
Make a group "TEXT 3D" and then place it using CREATEGROUPWITHMATERIAL .
group "TEXT 3D"
_ _ _ _
endgroup
j1=0 ! replace pen,
j2=0 ! replace material,
j4=1 ! make edges invisible.
pen_=2 ! replacement pen index.
material_=0 ! replacement material index.
repl_directive = j1 + 2*j2 + 4*j3 + 8*j4
placegroup CREATEGROUPWITHMATERIAL ("TEXT 3D" , repl_directive, pen_, material_)
2024-05-10 09:51 AM
@Pertti Paasky wrote:
Make a group "TEXT 3D" and then place it using CREATEGROUPWITHMATERIAL .
That is even easier.
I really should read through the reference manual again - I totally missed that one.
For those following along, the 3D text code can now be ...
GROUP "Text_Block_Group"
Text txt_thk,0,Elev_Txt_Str
ENDGROUP
!PLACEGROUP "Text_Block_Group"
!! Text !!
Material Elev_Txt_Mat
add 0,0,Elev_Txt_Hgt+Elev_Txt_size*0.5
ROTy -incl_txt
ROTx 90-roll_text
if SYMB_MIRRORED=1 then
mulx -1
endif
pen 1
PLACEGROUP CREATEGROUPWITHMATERIAL ("Text_Block_Group", 1*0 + 2*0 + 4*0 + 8*1, pen_numb, material_index)
del 1
del 1
del 1
You could even add a parameter now to turn the invisible edges masking value on or off, which is exactly what JGoode wants.
Barry.
2024-05-21 06:43 AM
The reason i don't use the CREATEGROUPWITHMATERIAL command is because in acrobat you still get funny things happening with the text,
left size is the ISECTGROUP, right side is the CREATEGROUPWITHMATERIAL
it looks different from the text box, labels, etc.
at 100%
at 150%
at 200%
in 3D
its an acrobat thing....
2024-05-22 11:40 PM
Have you tried to create literally an empty group and add to it your 3D text in other group with addgroup{3} (....last parameter toggle line appearance) ?
2024-05-23 05:27 AM
Could you use GLOB_VIEW_TYPE to toggle between the two methods?
AC22-23 AUS 7000 | Help Those Help You - Add a Signature |
Self-taught, bend it till it breaks | Creating a Thread |
Win11 | i9 10850K | 64GB | RX6600 | Win10 | R5 2600 | 16GB | GTX1660 |