98b06ed358
The patch it a continuation of commit 6e5529d7
, that handles import of
the 3D-scene camera. This patch handles lighting of the 3D-scene. But
lighting in MS Office has features which we cannot yet render, address
in API or store in ODF. More than two lights, softing with Scale and
and Offset, or Specular/Diffuse for all lights are not implemented for
extruded shapes, for example. Thus the rendering results cannot be
equal to MS Office.
This patch contains a lot of workarounds and compromises to get a
rendering which looks somewhat similar. Unit tests are not really
meaningful in this situation. The included tests focus on the principle
aspects modern/legacy lightRigs and lightRig rotation.
The light rig values are taken from sections 2.1.1274 and 2.1.1321 in
[MS-OI29500] - v20231113.
https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oi29500
That version does not specify the used coordinate system for the
light directions. Find the discussion about that in
https://learn.microsoft.com/en-us/answers/questions/1551836
topic: LightDirection on shape with 3D effect is rendered different
than specified.
That version does not specify the values 'Specular' and 'Diffuse'
for legacy* light rigs. Find the discussion about that in
https://learn.microsoft.com/en-us/answers/questions/1608333
topic: What is 'Specular' and 'Diffuse' in the lightRig table in
section 2.1.1274 in [MS-OI29500]?
Change-Id: I91750dc231d0ea09115424d896d3a1260ba766ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164510
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
57 lines
1.5 KiB
Makefile
57 lines
1.5 KiB
Makefile
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
|
#*************************************************************************
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
#*************************************************************************
|
|
|
|
$(eval $(call gb_CppunitTest_CppunitTest,oox_testscene3d))
|
|
|
|
$(eval $(call gb_CppunitTest_use_externals,oox_testscene3d,\
|
|
boost_headers \
|
|
libxml2 \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_add_exception_objects,oox_testscene3d, \
|
|
oox/qa/unit/testscene3d \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_libraries,oox_testscene3d, \
|
|
comphelper \
|
|
cppu \
|
|
cppuhelper \
|
|
oox \
|
|
sal \
|
|
sfx \
|
|
subsequenttest \
|
|
svx \
|
|
svxcore \
|
|
test \
|
|
tl \
|
|
unotest \
|
|
utl \
|
|
vcl \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_sdk_api,oox_testscene3d))
|
|
|
|
$(eval $(call gb_CppunitTest_use_ure,oox_testscene3d))
|
|
$(eval $(call gb_CppunitTest_use_vcl,oox_testscene3d))
|
|
|
|
$(eval $(call gb_CppunitTest_use_rdb,oox_testscene3d,services))
|
|
|
|
$(eval $(call gb_CppunitTest_use_custom_headers,oox_testscene3d,\
|
|
officecfg/registry \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_configuration,oox_testscene3d))
|
|
|
|
$(eval $(call gb_CppunitTest_add_arguments,oox_testscene3d, \
|
|
-env:arg-env=$(gb_Helper_LIBRARY_PATH_VAR)"$$$${$(gb_Helper_LIBRARY_PATH_VAR)+=$$$$$(gb_Helper_LIBRARY_PATH_VAR)}" \
|
|
))
|
|
|
|
# vim: set noet sw=4 ts=4:
|