Класс PhongMaterial
java.lang.Object
javafx.scene.paint.Material
javafx.scene.paint.PhongMaterial
public class PhongMaterial
extends Material Класс
и
PhongMaterial предоставляет определения свойств, которые представляют материал с затенением Фонга. Он описывает взаимодействие света с поверхностью Mesh, к которому он применяется. PhongMaterial отражает свет с точки зрения диффузной и зеркальной составляющих вместе с окружающей и собственной подсветкой. Цвет точки на геометрической поверхности является математической функцией этих четырёх компонентов. Цвет вычисляется по следующему уравнению:
for each ambient light source i {
ambient += lightColor[i]
}
for each point light source i {
diffuse += (L[i] . N) * lightColor[i]
specular += ((R[i] . V) ^ (specularPower * intensity(specularMap))) * lightColor[i]
}
color = (ambient + diffuse) * diffuseColor * diffuseMap
+ specular * specularColor * specularMap
+ selfIlluminationMap
где lightColor[i] — цвет источника света i,L[i] — вектор от поверхности до источника света i,N — нормальный вектор (учитывая bumpMap, если он присутствует),R[i] — нормированный отраженный вектор для L[i] относительно нормали поверхности,и
V — нормированный вектор взгляда.- С момента:
- JavaFX 8.0
- См. также:
-
AmbientLight,PointLight
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
ObjectProperty<Image> | bumpMap | Bump-карта этого PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGB Image. |
ObjectProperty<Color> | diffuseColor | Диффузный цвет этого PhongMaterial. |
ObjectProperty<Image> | diffuseMap | Диффузная карта этого PhongMaterial. |
ObjectProperty<Image> | selfIlluminationMap | Карта собственной подсветки этого PhongMaterial. |
ObjectProperty<Color> | specularColor | Зеркальный цвет этого PhongMaterial. |
ObjectProperty<Image> | specularMap | Зеркальная карта этого PhongMaterial. |
DoubleProperty | specularPower | Зеркальная мощность этого PhongMaterial. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PhongMaterial() | Создаёт новый экземпляр класса PhongMaterial с полем по умолчанию Color.WHITE diffuseColor. |
PhongMaterial(Color diffuseColor) | Создаёт новый экземпляр класса PhongMaterial, используя указанный цвет для его свойства diffuseColor. |
PhongMaterial(Color diffuseColor,
Image diffuseMap,
Image specularMap,
Image bumpMap,
Image selfIlluminationMap) | Создаёт новый экземпляр класса PhongMaterial, используя указанные цвета и изображения для его свойств diffuseColor. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
ObjectProperty<Image> | bumpMapProperty() | Bump-карта этого PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGB Image. |
ObjectProperty<Color> | diffuseColorProperty() | Диффузный цвет этого PhongMaterial. |
ObjectProperty<Image> | diffuseMapProperty() | Диффузная карта этого PhongMaterial. |
Image | getBumpMap() | Возвращает значение свойства bumpMap. |
Color | getDiffuseColor() | Возвращает значение свойства diffuseColor. |
Image | getDiffuseMap() | Возвращает значение свойства diffuseMap. |
Image | getSelfIlluminationMap() | Возвращает значение свойства selfIlluminationMap. |
Color | getSpecularColor() | Возвращает значение свойства specularColor. |
Image | getSpecularMap() | Возвращает значение свойства specularMap. |
double | getSpecularPower() | Возвращает значение свойства specularPower. |
ObjectProperty<Image> | selfIlluminationMapProperty() | Карта собственной подсветки этого PhongMaterial. |
void | setBumpMap(Image value) | Устанавливает значение свойства bumpMap. |
void | setDiffuseColor(Color value) | Устанавливает значение свойства diffuseColor. |
void | setDiffuseMap(Image value) | Устанавливает значение свойства diffuseMap. |
void | setSelfIlluminationMap(Image value) | Устанавливает значение свойства selfIlluminationMap. |
void | setSpecularColor(Color value) | Устанавливает значение свойства specularColor. |
void | setSpecularMap(Image value) | Устанавливает значение свойства specularMap. |
void | setSpecularPower(double value) | Устанавливает значение свойства specularPower. |
ObjectProperty<Color> | specularColorProperty() | Зеркальный цвет этого PhongMaterial. |
ObjectProperty<Image> | specularMapProperty() | Зеркальная карта этого PhongMaterial. |
DoubleProperty | specularPowerProperty() | Зеркальная мощность этого PhongMaterial. |
Подробности свойств
diffuseColor
public final ObjectProperty<Color> diffuseColorProperty
Цвет рассеянного света этого
PhongMaterial.- Значение по умолчанию:
- Color.WHITE
- См. также:
-
getDiffuseColor(),setDiffuseColor(Color)
specularColor
public final ObjectProperty<Color> specularColorProperty
Цвет зеркального света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSpecularColor(),setSpecularColor(Color)
specularPower
public final DoubleProperty specularPowerProperty
Сила зеркального света этого
PhongMaterial.- Значение по умолчанию:
- 32.0
- См. также:
-
getSpecularPower(),setSpecularPower(double)
diffuseMap
public final ObjectProperty<Image> diffuseMapProperty
Карта рассеянного света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getDiffuseMap(),setDiffuseMap(Image)
specularMap
public final ObjectProperty<Image> specularMapProperty
Карта зеркального света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSpecularMap(),setSpecularMap(Image)
bumpMap
public final ObjectProperty<Image> bumpMapProperty
Карта рельефа этого
PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGB Image.- Значение по умолчанию:
- null
- См. также:
-
getBumpMap(),setBumpMap(Image)
selfIlluminationMap
public final ObjectProperty<Image> selfIlluminationMapProperty
Карта собственного освещения этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSelfIlluminationMap(),setSelfIlluminationMap(Image)
Подробности конструкторов
PhongMaterial
public PhongMaterial()
Создаёт новый экземпляр класса
PhongMaterial с свойством diffuseColor по умолчанию Color.WHITE diffuseColor.PhongMaterial
public PhongMaterial(Color diffuseColor)
Создаёт новый экземпляр класса
PhongMaterial, используя указанный цвет для свойства diffuseColor.- Параметры:
-
diffuseColor- цвет свойства diffuseColor
PhongMaterial
public PhongMaterial(Color diffuseColor, Image diffuseMap, Image specularMap, Image bumpMap, Image selfIlluminationMap)
Создаёт новый экземпляр класса
PhongMaterial, используя указанные цвета и изображения для свойств diffuseColor.- Параметры:
-
diffuseColor- цвет свойства diffuseColor -
diffuseMap- изображение свойства diffuseMap -
specularMap- изображение свойства specularMap -
bumpMap- изображение свойства bumpMap -
selfIlluminationMap- изображение свойства selfIlluminationMap
Подробности методов
setDiffuseColor
public final void setDiffuseColor(Color value)
Устанавливает значение свойства diffuseColor.
- Описание свойства:
- Цвет рассеянного света этого
PhongMaterial. - Значение по умолчанию:
- Color.WHITE
getDiffuseColor
public final Color getDiffuseColor()
Получает значение свойства diffuseColor.
- Описание свойства:
- Цвет рассеянного света этого
PhongMaterial. - Значение по умолчанию:
- Color.WHITE
diffuseColorProperty
public final ObjectProperty<Color> diffuseColorProperty()
Цвет рассеянного света этого
PhongMaterial.- Значение по умолчанию:
- Color.WHITE
- См. также:
-
getDiffuseColor(),setDiffuseColor(Color)
setSpecularColor
public final void setSpecularColor(Color value)
Устанавливает значение свойства specularColor.
- Описание свойства:
- Цвет зеркального света этого
PhongMaterial. - Значение по умолчанию:
- null
getSpecularColor
public final Color getSpecularColor()
Получает значение свойства specularColor.
- Описание свойства:
- Цвет зеркального света этого
PhongMaterial. - Значение по умолчанию:
- null
specularColorProperty
public final ObjectProperty<Color> specularColorProperty()
Цвет зеркального света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSpecularColor(),setSpecularColor(Color)
setSpecularPower
public final void setSpecularPower(double value)
Устанавливает значение свойства specularPower.
- Описание свойства:
- Сила зеркального света этого
PhongMaterial. - Значение по умолчанию:
- 32.0
getSpecularPower
public final double getSpecularPower()
Получает значение свойства specularPower.
- Описание свойства:
- Сила зеркального света этого
PhongMaterial. - Значение по умолчанию:
- 32.0
specularPowerProperty
public final DoubleProperty specularPowerProperty()
Сила зеркального света этого
PhongMaterial.- Значение по умолчанию:
- 32.0
- См. также:
-
getSpecularPower(),setSpecularPower(double)
setDiffuseMap
public final void setDiffuseMap(Image value)
Устанавливает значение свойства diffuseMap.
- Описание свойства:
- Карта рассеянного света этого
PhongMaterial. - Значение по умолчанию:
- null
getDiffuseMap
public final Image getDiffuseMap()
Получает значение свойства diffuseMap.
- Описание свойства:
- Карта рассеянного света этого
PhongMaterial. - Значение по умолчанию:
- null
diffuseMapProperty
public final ObjectProperty<Image> diffuseMapProperty()
Карта рассеянного света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getDiffuseMap(),setDiffuseMap(Image)
setSpecularMap
public final void setSpecularMap(Image value)
Устанавливает значение свойства specularMap.
- Описание свойства:
- Карта зеркального света этого
PhongMaterial. - Значение по умолчанию:
- null
getSpecularMap
public final Image getSpecularMap()
Получает значение свойства specularMap.
- Описание свойства:
- Карта зеркального света этого
PhongMaterial. - Значение по умолчанию:
- null
specularMapProperty
public final ObjectProperty<Image> specularMapProperty()
Карта зеркального света этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSpecularMap(),setSpecularMap(Image)
setBumpMap
public final void setBumpMap(Image value)
Устанавливает значение свойства bumpMap.
- Описание свойства:
- Карта рельефа этого
PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGBImage. - Значение по умолчанию:
- null
getBumpMap
public final Image getBumpMap()
Получает значение свойства bumpMap.
- Описание свойства:
- Карта рельефа этого
PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGBImage. - Значение по умолчанию:
- null
bumpMapProperty
public final ObjectProperty<Image> bumpMapProperty()
Карта выступов этого
PhongMaterial, которая представляет собой карту нормалей, хранящуюся как RGB Image.- Значение по умолчанию:
- null
- См. также:
-
getBumpMap(),setBumpMap(Image)
setSelfIlluminationMap
public final void setSelfIlluminationMap(Image value)
Устанавливает значение свойства selfIlluminationMap.
- Описание свойства:
- Карта самоосвещения этого
PhongMaterial. - Значение по умолчанию:
- null
getSelfIlluminationMap
public final Image getSelfIlluminationMap()
Получает значение свойства selfIlluminationMap.
- Описание свойства:
- Карта самоосвещения этого
PhongMaterial. - Значение по умолчанию:
- null
selfIlluminationMapProperty
public final ObjectProperty<Image> selfIlluminationMapProperty()
Карта самоосвещения этого
PhongMaterial.- Значение по умолчанию:
- null
- См. также:
-
getSelfIlluminationMap(),setSelfIlluminationMap(Image)
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.