[Functions] (NfDesign)

Input/ Output Files
*.pos 
input/output
ASCII file for measured or generated points.
(Polyline file)
*.sct
input/output
ASCII file for polylines and straight lines describing vertices.
Available to describe continuous and plural polylines.
The file has header section.
(Triangle file)
*.std
input/output
ASCII file for spatial triangles.
Describing coordinates of triangles and vectors to emulate smooth surface.
(Texture file)
*.bmp, *.png, *.tga, *.jpg
input/output
Textures are used for background images, mapping and 3D paint. Rendering images are saved as textures.
(DXF file)
*.dxf
input/output
Input layer is converted to [group].
(nff file)
*.nff
input only
Developed by Sense8 of the USA and describes geometries with textures.
(STL file)
*.stl
input/output
Binary and ASCII file for streographic lithography developed by 3D Systems in the USA.
(3ds file)
*.3ds
input/output
NfDesign supports bmp, png, jpg and tga for textures.
3ds files with these textures can be input and output.
(VRML 1.0 file)
*.wrl
output only
(nxv file)
*.nxv
output only
The viewing functions of NfDesign is a free program called NfView which reads this format.
(IGES file)
*.igs
input only
Surface Definitions can be read into NfDesign.
(nfd file)
*.nfd
input/output
Compressed binary file unique to NfDesign.


OpenGL/Multi-thread
NfDesign is based on OpenGL and Multi-thread. Multi-thread makes it possible to operate and to edit enormous data comfortably.
Geometric Entities being used for 3D Modeling
point, straight-line, polyline, triangle, triangle-mesh, NURBS-curve/surface, sub-division-surface, metaball, height-field
Textures being used
bmp, png, jpg, tga
Parametric Generation of Primitives
(Polyline) character string, rectangle, circle, helix, star
(Triangle-mesh) plane, disc, sphere, torus, cube, cube-with-round-corner, cylinder, equilateral-polyhedron, pipe, rectangular-cone, cone, cone-with-round-corner, conical-trapezoid, fractal-mountain
(Metaball) metaball, oval-metaball, line-metaball, cube-metaball, torus-metaball, automatic-generation-on-polyline
(NURBS-curve/surface) circle, cylinder, sphere, cone, torus, cube, rectangular-cone
Generation of Arc/Circle, Straight-line and Polyline
Clicking mouse or keying coordinates generates straight-line/polyline and arc/circle. Arc/circle is generated with polyline or NURBS-curve.
Editing Polyline
round, fillet, chamfer, 2D offset, divide, separate, interpolation, change to camera-path, change to NURBS-curve, intersection with straight-line/polyline/curve/triangle-mesh etc
Generating Triangle-mesh by Polyline
make triangle-mesh inside closed polyline, make triangle-mesh between 2 polylines, linear-extrude, rotational-extrude, sweep
Editing Triangle-mesh
thicken(defined direction/each vector), smoothen, decrease mesh number, round, separate, extrude(defined direction/each vector), bevel etc
Generating NURBS-surface by NURBS-curve
linear-extrude, rotational-extrude, sweep, make surface between 2 curves, make surface inside 4 curves(Coon's patch), loft, connect, fold, separate, edge-extrude, concentrate on 1 point, round, chamfer, smoothen, 2D offset , 3D offset by control points etc
Conversion between Geometric Entities
(triangle-mesh to sub-division-surface and vice versa)
(straight-line to polyline and vice versa)
(polyline to NURBS-curve and vice versa)
(triangle to triangle-mesh and vice versa)
(NURBS-surface to triangle-mesh)
(metaball to triangle-mesh)
(height-field to triangle-mesh)
Interactive Transform of 3D Objects
expand/reduce on each axis/on same ratio, move/rotate on each axis, rotate on arbitrary axis, cross-section between 2 triangle-meshes(Boolean operation), reproduction with expand/reduce/move/rotate, reproduction on paths, reproduction on vertices,
move control points or vertices to arbitrary direction/on plane/on straight-line, move with expand/reduce, area movement with defined parameters
free-form-deformation, twist, taper, wring, prolong/shrink, shear, bend, pinch
Bone Transform and Inverse Kinematics
joint definition and structure, bone deformation of 3D objects, inverse kinematics
Dialogue Indication on Each Object and Object Change by Dialogue Setting
Measure
position coordinates, distance, angle, coordinate range
indication of characteristics on each object in property dialogue
indicating total number of each entity
View on Edit Screen
show with wireframe/shade of whole/part, dynamic zoom-in/out, dynamic viewpoint change, easy change of isometric/perspective, dynamic perspective view on viewpoint and target point, dynamic look around, viewpoint dialogue and pre-set view, walk-through, transparent material on edit screen, luminescent material on edit screen, texture-mapped object on edit screen
Material Setting
ambient, diffusion, luster, luminescent, transparency, reflection, refraction, surface roughness, realtime preview
3D effect (noise/marble/vapor/wave/ripple/lattice/prominent/tile/anisotropic/clay/grain/gradation etc effect on rendering, availabel to make use as new textures)
Texture Mapping
projection of parallel/cylinder/sphere/cube, realtime adjust of projection center, plural textures, partially transparent texture, interpolation, 3D paint, rubber sheeting, direct mapping on NURBS-surface/sub-division-surface
Rendering Window
ray-tracing-method/global-illumination-method, partial rendering, fog effect, shadow, half-transparent shadow, antialiasing, gradation
additional light source (parallel, point, spotlight, beam, line, area)
defined material effects (including 3D effect), mapped celestial sphere, direct rendering of metaball/sub-division-surface
3D Cursor
size/position/rotational angle, related to parametric primitives, making use of cursor axis for move/rotate/transform/extrude, making use of position/size for reading in external objects, additional light setting

Walk-through
walk-through by mouse operation, register as camera-path
Walk-through-animation
change polyline to camera-path, set cameras on vertices of polyline, walk-through-animation on edit screen, walk-through-animation on set speed, output to AVI file
SDK for developing plu-in module with VC++
