�ɲɾ�����ӯ�����һ��ˣ��������С���˴��ͣ�������P���ҹ��ñ˽��ά�Բ��������˸߸ԣ�������ơ��ҹ��ñ�����ά�Բ���ˡ���˳^�ӣ������ӡ� ���ͯj�ӣ��ƺ���ӣ� ? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!PKD1][4PPAUTHORSnu[Developers: ----------- Florian Kainz Rod Bogart Drew Hess Bill Anderson Wojciech Jarosz Contributors: ------------- Rito Trevino Josh Pines Christian Rouet Win32 build system: ------------------- Nick Porcino Kimball Thurston PKD1]5WCOPYINGnu[Copyright (c) 2006, Industrial Light & Magic, a division of Lucasfilm Entertainment Company Ltd. Portions contributed and copyright held by others as indicated. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Industrial Light & Magic nor the names of any other contributors to this software may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PKD1]READMEnu[ABOUT THE ILMBASE LIBRARIES ---------------------------- Half is a class that encapsulates our 16-bit floating-point format. IlmThread is a thread abstraction library for use with OpenEXR and other software packages. It currently supports pthreads and Windows threads. Imath implements 2D and 3D vectors, 3x3 and 4x4 matrices, quaternions and other useful 2D and 3D math functions. Iex is an exception-handling library. If you have questions about using the IlmBase libraries, you may want to join our developer mailing list. See http://www.openexr.com for details. LICENSE ------- The IlmBase source code distribution is free software. See the file named COPYING (included in this distribution) for details. BUILDING ILMBASE ---------------- To build IlmBase on GNU/Linux or other UNIX-like systems, do this: ./configure make make install unless you obtained IlmBase directly from git, in which case you should first read README.git Please type : ./configure --help for a list of options in relation to building IlmBase libraries. In particular, peruse README.namespaces for information regarding the use of namespaces in IlmBase and OpenEXR. See README.OSX for details on building IlmBase in MacOS X. Do `make check` to run the IlmBase confidence tests. They should all pass; if you find a test that does not pass on your system, please let us know. Other UNIX variants haven't been tested, but should be easy to build. Let us know if you're having problems porting IlmBase to a particular platform. All include files needed to use the IlmBase libraries are installed in the OpenEXR subdirectory of the install prefix, e.g. /usr/local/include/OpenEXR. USING ILMBASE IN YOUR APPLICATIONS ---------------------------------- On systems with support for pkg-config, use `pkg-config --cflags IlmBase` for the C++ flags required to compile against IlmBase headers; and `pkg-config --libs IlmBase` for the linker flags required to link against IlmBase libraries. PKD1]yR ChangeLognu[Version 2.x.x * Bumped version to track OpenEXR (Piotr Stanczyk) Version 2.0.1 * Bumped version to track OpenEXR (Piotr Stanczyk) Version 2.0.0 * Bumped version to track OpenEXR (Piotr Stanczyk) * Numerous minor fixes, missing includes etc Version 1.1.0.beta.1 * Added new module PyIlmBase : python bindings for IlmBase (Nick Rasmussen) * Added git specific files (Piotr Stanczyk) * Minor fixes for newer gcc versions and OS X. (misc) * Preparation for OpenEXR v2 release { remove message for final release } (Piotr Stanczyk) * Updated the so verison to 10 (Piotr Stanczyk) * Initial use of the CMake build system (Nicholas Yue) Version 1.0.3 * Added support for enabling/disabling large stack optimisations, used in halfFunction.h. (Piotr Stanczyk) * Added ImathNoise.(h/cpp) files. Initializes Perlin noise to match the Renderman implmenetation. (Pixar Contribution) * Fixed a number of missing includes to comply with stricter enforcement by gnu compilers. (Piotr Stanczyk) * Depracated compiler flag: -Wno-long-double since it is no longer supported under OS X. (Piotr Stanczyk) * A minor API change to Imath::Frustum has been made: the functions 'near' and 'far' have been renamed to 'nearPlane' and 'farPlane' due to conflicts with certain windows headers. The former alternate accessor names for these values on windows ('hither' and 'yon') remain, though should be considered deprecated. (David Lenihan) * Added SVD, eigenvalue solver, and procrustes fit calculations to ImathMatrixAlgo. (Chris Twigg, Ji Hun Yu) * Added Imath::FrustumTest for frustum visibility testing. (Eric Johnston) * Fixed a stack corruption in the matrix minorOf functions. (Nick Rasmussen) * Visual studio 2008 project files have been added to the vc/vc9 directory, and several minor visual studio compile fixes have been applied. (Nick Rasmussen) * Updated the so verison to 7. (Piotr Stanczyk) * Depracated the MacCode_Warrior and Shake submodules. (Piotr Stanczyk) Version 1.0.2 * Added support for targetting builds on 64bit Windows and minimising number of compiler warnings on Windows. Thanks to Ger Hobbelt for his contributions to CreateDLL. (Ji Hun Yu) * Removed a spurious restrict qualifier in the matrix manipulation code that was causing the 64-bit MS compiler to generate code in release mode that caused incorrect results. (Ji Hun Yu) * Added patches for improving universal binaries on OS X. Thanks to Paul Schneider for the contribution (Piotr Stanczyk) * Imath::Box optimization: remove loops from methods by partially specializing the class, for boxes of two and three dimensions. (Piotr Stanczyk) * Added explicit copy constructors to Imath::Matrix33 and ImathMatrix44 to make conversions between float and double matrices more convenient. (Florian Kainz) * Added slerpShortestArc() and euclideanInnerProduct() functions to Imath::Quat. (Nick Porcino) * Added 4D vector class template Imath::Vec4. (Nick Porcino) * Copy constructors and assignment operators for Matrix33 and Matrix44 are up to 25% faster. Added matrix constructors that do not initialize the matrix (this is faster in cases where the initial value of the matrix is immediately overwritten anyway). (Nick Porcino) * Rewrote function closestPointOnBox(point,box). Shortened the code, improved numerical accuracy, fixed a bug where closestPointOnBox(box.center(),box) would return the center of the +Z side of the box, even if the +/-X or +/-Y sides were closer. (Florian Kainz) * Rewrote function findEntryAndExitPoints() in ImathBoxAlgo.h. Results are now consistent with those from intersect(), also in ImathBoxAlgo.h. (Florian Kainz) * Made Vec2::length() and Vec3::length() more accurate for vectors whose length is less than sqrt(limits::smallest()); (Florian Kainz) * Made Quat::angle() more accurate for small angles. (Don Hatch) Version 1.0.1: * Removed Windows .suo files from distribution. (Eric Wimmer) Version 1.0.0: * Bumped DSO version number to 6.0 (Florian Kainz) * Rounding during float-to-half conversion now implements "round to nearest even" mode: if the original float value is exactly in the middle between the two closest half values then rounding chooses the half value whose least significant bit is zero. (Florian Kainz) * Installation Tuning: - Corrected version number on dso's (libtool) - now 5.0 - Separated ILMBASE_LDFLAGS and ILMBASE_LIBS so that test programs in configure scripts of packages dependent on IlmBase can link with static libraries properly - eliminated some warning messages during install (Andrew Kunz) Version 0.9.0: * Initial release of this code as a separate library. Previously the libraries contained were part of version 1.4.0 of OpenEXR * New build scripts for Linux/Unix (Andrew Kunz) * New Windows project files and build scripts (Kimball Thurston) PKD1])̎&&NEWSnu[Version 0.9.0: - Initial release PKD1][4PPAUTHORSnu[PKD1]5WCOPYINGnu[PKD1]_READMEnu[PKD1]yR ]ChangeLognu[PKD1])̎&&$NEWSnu[PKa$