Help Index

TT2OBT

True Type to Object Converter

Help Index

Introduction

Menu Options

File

Options

Help

Examples

About

(C) 1994 by M. Rahlff, all rights reserved !


Introduction

'TT2OBT' is designed to convert Windows True Type fonts into 3d objects for use with CAD or raytracing software like POV, POLYRAY etc.

There are six steps to convert a character or a text string into a 3d model:

1. Select a font

2. Select a set of characters or a text string for conversion

3. Set the options for the conversion

4. Select a file format for output.

5. Select the output directory

6. Start the conversion.

See the example too !


About

This converter was developed by:

Markus Rahlff

Westerhamer Weg 12

82024 Taufkirchen - Germany

Phone/Fax: +49 89 6128340

CompuServe: 100271,3316

(C) 1994, All rights reserved

If you have any comments, questions, critics or remarks, fell free to send a note via e-mail to given CompuServe address above. Mail is always welcome.

Markus Rahlff

P.S. I hope my software is much better than my English is. Writing this documentation was not much fun to me and if you find some mistakes in writing or grammar, remember that this still might be better than a documentation in perfect German.


Menu 'File'

Menu Options:

Start Conversion

Directory

About

Exit


Command 'Start/Conversion'

This command starts the conversion-process. This item becomes available after a valid font was selected.

The conversion-process can be monitored in the main-window. Character by character is displayed, than filled with triangles ( if 'Fill' option was selected ) and surrounded by bevels ( if 'Bevels' are activated).

You can stop the process by pressing the 'ESC'-key. The conversion will stop after the actual character is finished.

If single characters are converted, each character is written to disk immediately after the conversion. The program uses the 'TT2OBT'-filename rules.

If a string is converted, all characters of the string will be converted first and then the string is composed. A file dialogbox will pop up and let you choose the filename  under which the text object is to be saved.


Command 'File/Directory'

This command opens a requester where you can enter the output directory for the generated 3d-objects. Every file-output will be written to this directory.

The files will be named after the 'TT2OBT'-filename rules.


Command 'File/About'

This command opens a window with information about 'TT2OBT'.


Command 'File/Exit'

This command will close 'TT2OBT'. No information will be lost when closing the program for every data will be written to disk as soon as possible.


Command 'Options/Font'

This command opens a standard Windows font-requester. Select the True Type font you want to convert. You can also choose different styles like 'bold', 'italic' etc.

The size of the font must be between 100 and 2000. The chosen size has some influence on the size of the generated 3d-object. As you can scale your object later with your 3d software the real size is not important, but it may have some influence on the shape of the resulting characters. True Type characters are constructed of line and spline-curves. Spline curves will be constructed of a limited number of line segments. The number of line segments can be set under the 'options/settings' menu with the parameter 'points per spline'. If you increase the number of line segments per spline curve, you should also increase the size of the font.

Typical settings will be a size of 500 with 2 to 3 points per spline.

A second point should be considered while choosing a font or a font size. In most cases 'TT2OBT' has to fill the character's interior with triangles. The filling algorithm might fail under following conditions:

a) Some lines of the character's outline are too thin

b) The lines of the character's outline are too short, especially in spline-segments

In both cases it might help to increase the size of the font.

There are also some fonts with a very complex outline that might cause some troubles. For example fonts with a simulated shadow or some clipart fonts. In most cases this kind of fonts can not be converted:

Anyway you'll find, that converting fonts like these into 3d objects will not make sense at all


Command 'Options/Settings'

This command will open a dialog box with various buttons. The settings in this dialog control, which characters of the font will be converted and the way, how the 3d-objects will be generated.

The main controls are:

Radio Button 'Char'

Radio Button 'Text'

Spline Approximation

Checkbox 'Fill'

Checkbox 'Extrude'

Bevel Control

All options will be saved as default when closing the dialog box with the 'OK' button.


A spline is defined as a starting point and a ending point with a curve between. This curve will be approximated with lines, which connect different points on the curve. A value of  '0' for the 'points per spline' parameter will produce a straight line from the start- to the endpoint. A value of '1' will result in 1 point and 2 lines etc. In most cases a value between 1 and 5 will be sufficient.


Imagine a spline curve, where starting and ending points are just 3 units apart. If you approximate the curve with 1 or more lines, these lines will become very short. This will result later in lots of unnecessary triangles. This parameter defines a minimum distance between two points within a spline curve and should be set to a value of at least 5.


Radio Button 'Char'

Choose this button, if you want to convert single characters out of the font. When this button is selected, the char-map below and the control-buttons at the right side of the radio-button becomes active. You can select single characters by clicking on the corresponding button within the char-map. Selected characters will turn red.

Select or deselect a whole range of characters with the buttons 'A-Z' to 'All' on the right side of the '+' and '-' signs.

If you start the conversion, each selected char will be converted and written into the output-directory, following the 'TT2OBT' filename rules.


Radio Button 'Text'

Select this button, if you want to convert and generate a text-string. Just write the text into the field besides the button. After the conversion a file dialogbox will apear to let you choose a filename for the resulting 3d-object.


Spline Approximation

The outline of a True Type character is defined as series of line segments and spline curves. A spline curve will be approximated with a limited number of lines. The two parameters 'points per spline' and 'min. point distance' control this approximation.


There are several ways to make the outline of a character visible to 3d software. Normally the outline is filled with triangles. This will be done, if the 'Fill' option is activated.


Normally the outline of  the character would be flat. If this option is activated, the character's outline will be extruded into the 3thd dimension. The depth is controlled by the value in the corresponding field. This option must be selected, if you want to generate a beveled outline.


'TT2OBT' Filename Rules
'TT2OBT' Filename Generation

When a text string is converted, all characters of the sting a converted separately and then used to generate the text string. Then the whole string is saved as one single object. A file dialogbox will apear to let you choose a filename. The program will add an extension, depending on the chosen file format.

When a couple of single characters are converted, each characters is saved in a single file with its filename generated after following rules:

Characters 'A' to 'Z':	filenames 'A.ext' to 'Z.ext'

Characters 'a' to 'z':	filename 'SA.ext' to 'SZ.ext', the preceding 'S' stands for 'small'

Characters '0' to '9':	filename 'NUM0.ext' to 'NUM9.ext', the preceding 'num' stands

for 'number'

All other characters:	filename 'SC###.ext', 'SC' stands for 'special character' and '###' for

the character's ASCII code.

'ext' depends on the chosen file format.


Bevel Control

When the outline of a character is extruded into the 3thd dimension, you'll get a 90 degree angle between the front-side and the new sides along the depth-axis.

You may add bevels to the outline of the character. This will give the character a smoother look, but will also increase the number of triangles used to construct the 3d model.

Remember: If you want to use bevels, the option 'extrude' must be activated.

There are 5 different kinds of bevels available:

 no bevel

 diagonal

 cornered

 convex

 concave

By clicking the radio buttons you can select one of the above bevel forms. If you choose 'convex' or 'concave', you have to enter a 'step'-value, which defines the number of steps for the approximation of the bevel's curve segment. Values between 2 and 4 will do a good job here. Higher values will produce smoother bevels but will also increase the number of triangles needed to form the bevel.

The option 'double bevel' may be activated, if the 'Fill'option is disabled. This option will produce bevels along the inner and outer outline of the character. Especially if the extrusion depth is set to zero, this feature will generate nice results. The 3d character will look like made of a piece of metal wire ( using 'convex'-bevel ).

The values in the fields 'Height' and 'Depth' control the size of the bevel.

The checkbox 'auto. corr.' may help to solve problems of the bevel calculation.


Controlling the bevel and character size

The primary size of the character is controlled by the chosen fontsize in the font-dialogbox. This value defines the size of the character's front face.

If the character's outline is extruded and beveled, the resulting size will depend on the extrusion depth and the bevel's height and depth values:


Problems with bevel calculation

Calculating bevels is not as simple as it may look on the first sight. The bevel can not (!) be calculated by scaling the characters outline and then connecting the edges to the original.

The bevels are calculated by tracing the original character outline with a given distance ( controlled by the bevel hight ). This works fine in most cases. Problems may occur, when there are angles smaller than 90 degrees in the character's outline as for example in the outline of the character 'B':

The bevel of the character 'B' intersects itself and the outline of the character. This effect will become very strong, if the height-value of the bevel is large compared with the characters size, or simply spoken: Avoid thick bevels !

The other way to solve this problem is to choose the 'auto corr.' option in the settings dialog box. If this option is activated, the program will search for intersection points of bevels and tries to eliminate the problem. This algorithm may solve the problem in most cases. But if there were still weird bevels, decrease the bevel height.


Command 'Options/Fileformat'

This command opens a dialog box with the four different file formats available for the 3d output:

1. Highlight format, Version 2.0 ( extension '.obt' )

2. DXF, Autodesk V11 file (extension '.dxf')

3. RAW, raw triangle output (extension '.raw')

4. POV, triangle union for use with POV 2.0 (extension '.inc')


Command 'Options/Singelstep'

If this option is activated, the program stops after each character conversion. This gives you the chance to control the result, check for errors according bevels or filling failures.


Menu 'Help'

Clicking at the 'Help'-Menu starts this help text.


Menu 'Options'

Menu options:

Font

Settings

Fileformat

Singelstep


Examples

OK, lets try to convert a text string into a 3d object.

1) First call 'Options/Font'. A font dialog box will open. Select the font 'Times New Roman', style 'italic' and a size of 300.

2) Choose the fitting file format for your 3d software and the output directory.

3) Now start 'Options/Settings' A new dialog box will open. Click into the text field in the upper right corner and enter the text 'Hallo'. Choose 2 'points per spline' with a minimal distance of 10. Activate the options 'Fill' and 'Extrude' with a depth of 100. Select in the bevel control the option 'no bevel' and close the dialog with 'OK'.

4) Start the conversion with the 'File/Start Coversion'command.

An output file with the name 'hallo.ext' will be generated in the output directory.( The file extension depends on the chosen file format ). Start your 3d software and control the result.

Now repeat the steps 3) to 4) with following settings:

a) Set bevel to 'diagonal' with value 10 for 'Height' and 'Depth'.

b) Try 'cornered', 'convex', 'concave' ( set the number of steps to 3) bevels.

c) Select 'convex' bevels, set the bevel depth to 40.

d) Now try the same, but set the extrusion depth to 0.

e) Last not least, deactivate the option 'Fill' and activate 'double bevel'. Set the

    bevel height and depth to 10. ( That's a nice one... )

OK, that's it. Try different combinations, but don't let the bevels get too thick - that will cause weird effects and other problems.