Table of Contents

Class KerkytheaExporter

Namespace
HelixToolkit.Wpf
Assembly
HelixToolkit.Wpf.dll

Exports the 3D visual tree to a Kerkythea input file.

public sealed class KerkytheaExporter : Exporter<KerkytheaExporter.KerkytheaWriter>, IExporter
Inheritance
KerkytheaExporter
Implements
Inherited Members

Constructors

KerkytheaExporter()

Initializes a new instance of the KerkytheaExporter class.

public KerkytheaExporter()

Properties

Aperture

Gets or sets the aperture.

public string Aperture { get; set; }

Property Value

string

The aperture.

BackgroundColor

Gets or sets the color of the background.

public Color BackgroundColor { get; set; }

Property Value

Color

The color of the background.

FileCreator

Gets or sets the texture file creator.

public Func<string, Stream> FileCreator { get; set; }

Property Value

Func<string, Stream>

The file creator.

FocalLength

Gets or sets the length of the focal.

public double FocalLength { get; set; }

Property Value

double

The length of the focal.

FocusDistance

Gets or sets the focus distance.

public double FocusDistance { get; set; }

Property Value

double

The focus distance.

Height

Gets or sets the height.

public int Height { get; set; }

Property Value

int

The height.

LensSamples

Gets or sets the lens samples.

public int LensSamples { get; set; }

Property Value

int

The lens samples.

LightMultiplier

Gets or sets the light multiplier.

public double LightMultiplier { get; set; }

Property Value

double

The light multiplier.

Name

Gets or sets the name.

public string Name { get; set; }

Property Value

string

The name.

ReflectionColor

Gets or sets the color of the reflection.

public Color ReflectionColor { get; set; }

Property Value

Color

The color of the reflection.

Reflections

Gets or sets a value indicating whether this KerkytheaExporter is reflections.

public bool Reflections { get; set; }

Property Value

bool

true if reflections; otherwise, false.

RenderSetting

Gets or sets the render setting.

public KerkytheaExporter.RenderSettings RenderSetting { get; set; }

Property Value

KerkytheaExporter.RenderSettings

The render setting.

ShadowColor

Gets or sets the color of the shadow.

public Color ShadowColor { get; set; }

Property Value

Color

The color of the shadow.

Shadows

Gets or sets a value indicating whether this KerkytheaExporter is shadows.

public bool Shadows { get; set; }

Property Value

bool

true if shadows; otherwise, false.

SoftShadows

Gets or sets a value indicating whether [soft shadows].

public bool SoftShadows { get; set; }

Property Value

bool

true if [soft shadows]; otherwise, false.

TextureHeight

Gets or sets the height of the texture.

public int TextureHeight { get; set; }

Property Value

int

The height of the texture.

TexturePath

Gets or sets the texture path.

public string? TexturePath { get; set; }

Property Value

string

The texture path.

TextureWidth

Gets or sets the width of the texture.

public int TextureWidth { get; set; }

Property Value

int

The width of the texture.

Threads

Gets or sets the threads.

public int Threads { get; set; }

Property Value

int

The threads.

Width

Gets or sets the width.

public int Width { get; set; }

Property Value

int

The width.

Methods

Close(KerkytheaWriter)

Closes this exporter.

protected override void Close(KerkytheaExporter.KerkytheaWriter writer)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

Create(Stream)

Creates the writer for the specified stream.

protected override KerkytheaExporter.KerkytheaWriter Create(Stream stream)

Parameters

stream Stream

The stream.

Returns

KerkytheaExporter.KerkytheaWriter

The writer.

ExportCamera(KerkytheaWriter, Camera)

Exports the camera.

protected override void ExportCamera(KerkytheaExporter.KerkytheaWriter writer, Camera c)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

c Camera

The camera.

Exceptions

InvalidOperationException

Only perspective cameras are supported.

ExportHeader(KerkytheaWriter)

Exports the document header.

protected override void ExportHeader(KerkytheaExporter.KerkytheaWriter writer)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

ExportLight(KerkytheaWriter, Light, Transform3D)

Exports the light.

protected override void ExportLight(KerkytheaExporter.KerkytheaWriter writer, Light l, Transform3D t)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

l Light

The light.

t Transform3D

The transform.

ExportMesh(KerkytheaWriter, MeshGeometry3D)

Exports the mesh.

public void ExportMesh(KerkytheaExporter.KerkytheaWriter writer, MeshGeometry3D m)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

m MeshGeometry3D

The mesh.

ExportModel(KerkytheaWriter, GeometryModel3D, Transform3D)

Exports the model.

protected override void ExportModel(KerkytheaExporter.KerkytheaWriter writer, GeometryModel3D g, Transform3D transform)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

g GeometryModel3D

The model geometry.

transform Transform3D

The transform.

ExportViewport(KerkytheaWriter, Viewport3D)

Exports the specified viewport.

protected override void ExportViewport(KerkytheaExporter.KerkytheaWriter writer, Viewport3D v)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

v Viewport3D

The viewport to export.

RegisterMaterial(Material, Stream)

Registers a material.

public void RegisterMaterial(Material m, Stream stream)

Parameters

m Material

The material to register.

stream Stream

The material stream.

ValueOrDefault(double, double)

Returns the value or the defaultValue if the value is NaN.

public static double ValueOrDefault(double value, double defaultValue)

Parameters

value double

The value.

defaultValue double

The default value.

Returns

double

The value.

WriteMetropolisLightTransport(KerkytheaWriter, string)

Writes the Metropolis Light Transport properties.

public void WriteMetropolisLightTransport(KerkytheaExporter.KerkytheaWriter writer, string name)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

name string

The name of the MLP ray tracer.

WriteStandardRayTracer(KerkytheaWriter, string)

Writes the standard ray tracer properties.

public void WriteStandardRayTracer(KerkytheaExporter.KerkytheaWriter writer, string name)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

name string

The name of the ray tracer.

WriteThreadedRaytracer(KerkytheaWriter, int)

Writes the threaded ray tracer properties.

public void WriteThreadedRaytracer(KerkytheaExporter.KerkytheaWriter writer, int threads)

Parameters

writer KerkytheaExporter.KerkytheaWriter

The writer.

threads int

The number of threads.