Click or drag to resize

IMaterial Interface

Interface for material used in 3D geometry.

Namespace: Altaxo.Drawing.D3D
Assembly: AltaxoBase (in AltaxoBase.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public interface IMaterial : IImmutable, 
	IEquatable<IMaterial>

The IMaterial type exposes the following members.

Properties
 NameDescription
Public propertyColor Gets the diffuse color of the material.
Public propertyHasColor Gets a value indicating whether this instance has a color by itself.
Public propertyHasTexture Gets a value indicating whether this instance has texture.
Public propertyIndexOfRefraction Gets the index of refraction of the material.
Public propertyIsVisible Gets a value indicating whether this material is visible at all. There might be one material instance that could be used as a convenient place holder for null, that is treated as "no material". Drawing contexts should not draw anything if the material returns false for this property.
Public propertyMetalness Value between 0 and 1. If 0, the reflected specular light is multiplied with the material diffuse color. This is often the case for metals, e.g. gold. If 1, the reflected specular light has the same color as the incident light (thus as if it is reflected at a white surface). This is often the case for plastics.
Public propertyPhongModelDiffuseIntensity Gets the diffuse intensity normalized for phong model.
Public propertyPhongModelSpecularExponent Gets the specular exponent for the Phong model.
Public propertyPhongModelSpecularIntensity Gets the specular intensity normalized for phong model. This is the expression SpecularIntensity*(1+SpecularExponent). This pre-factor in the Phong equation ensures that the total light intensity reflected in all directions of the half sphere will not change when changing the SpecularExponent.
Public propertySmoothness Gets the specular exponent. The higher this value, the more shiny the material (i.e. the smaller the reflex on the surface).
Top
Methods
 NameDescription
Public methodEqualsIndicates whether the current object is equal to another object of the same type.
(Inherited from IEquatableIMaterial)
Public methodHasSameSpecularPropertiesAs Determines whether this material has the same specular properties as the material provided in anotherMaterial.
Public methodWithColor Gets a new instance of this material with the color set to the provided values. Material classes that don't support color should not throw an exception, but simply return the same instance.
Public methodWithSpecularProperties Gets a new instance of this material with the specular properties set to the provided values.
Public methodWithSpecularPropertiesAs Returns a new material based on this material, but with all specular properties taken from the template material provided in templateMaterial.
Top
See Also