Metadata-Version: 2.1
Name: pypos3dtu
Version: 1.0.3
Summary: Unit Tests for Wavefront files and Poser files manipulation library
Home-page: https://sourceforge.net/projects/pojamas
Author: Olivier Dufailly
Author-email: dufgrinder@laposte.net
License: UNKNOWN
Description: 
        This file is the README of the unit tests and example package of:
        - The pypos3d library.
        - The pypos3dv 3D OpenGL Viewer
        - The LibreOffice based GUI
        
        # 1. INTRODUCTION:
        This library is a port of the old DATA3D library of the OpenSource Pojamas project.
        I own both of them.
        
        pypos3d aims to have a high level of quality.
        Each version is automatically tested with a set of unit tests.
        Coding rules are based on CNES (RNC-CNES-Q-HB-80-535) -CNES is the French National Space Agency-
        
        
        # 2. INSTALLATION:
        
        ## Library Installation:
        The library shall be installed with pip:
        > python3 -m pip pypos3dtu
        
        Each release of pypos3dtu shall test the same version of pypos3d library
        
        
        ## Configuration Management System:
        The code is managed on SourceForge platform under SVN:
        svn checkout svn://svn.code.sf.net/p/pojamas/svncode/ pojamas-svncode
        
        Development and test files are gathered in directory **PyPoser**
        
        This PyPoser directory contains an Eclipse/PyDev environment.
        
        
        # 3. Tests:
        Unit tests are delivered in this package (pypos3dtu)
        This library is tested with unitest with a target coverage rate over 85%.
        
        Installation and commissionning tests are performed on:
        - CentOS 8, 7
        - Fedora >30
        - Microsoft Windows 10 
        - Debian 10 (i386)
        
        
        ## Unit Tests:
        To run the tests, 3 ways are available:
        
        * Under Linux use script the _tu.sh_ to launch all tests:
         - Tests are run in parallel
         - Coverage Tests are run one by one (results in coverage\_results.txt)
         
         - Detailed logs are generated in directory: pypos3dtu/tulog
         - Results are generated in directory: pypos3dtu/tures
        
        * Outside Linux (in non dev environments):
         - Locate the installation directory of pypos3dtu
        
           `> python -c "import pypos3dtu; print(pypos3dtu.__path__[0])"`
           
         - Change current directory to the previous value and create result directories:
          
           `> cd C:\Users\olivier\AppData\Roaming\Python\Python38\site-packages\pypos3dtu`
           `> mkdir tulog rures` 
        
         - Execute manually the tests
        
           `> python -m unittest discover -p "tu*.py"`
        
        * In a development environment:
         - Checkout the Eclipse project (cf. link above)
         - Run tests from PyPoser/src/pypos3dtu
         - Don't forfget to clean the 'tures' directory before check-in
        
        
        ## Validation Tests:
        Validation tests are 'free' tests excuted on the GUI (LibreOffice) and the viewer.
        Validation tests of the viewer (pypos3dv command) shall be run on various hardware
        platforms.
        
        ## Tests Platforms:
        
        |Platform| CPU, RAM, GraphicCard | OS - Software |
        |---------|----------------------|---------------|
        |d16      | Intel Core) i7-7700HQ CPU @ 2.80GHz x86\_64 - 4C/8T - RAM 16GB NVIDIA Corporation GP108M [GeForce MX150]|**CentOS 8 Stream**<br/>Python 3.6.8<br/>PyOpenGL 3.1.5<br/>Pillow 7.2|
        |d6       | Intel Core) i5 CPU 750  @ 2.67GHz<br/><br/>x86\_64 - 4C/4T - RAM 4GB<br/>NVIDIA Corporation GF119 [GeForce GT 520]|**CentOS 7**<br/>Python 3.6.8<br/>Pillow 6.2 <br/>nvidia-390xx-390.138-1.el7.x86\_64<br/>PyOpenGL 3.1.5| 
        |d8       | Intel Atom CPU N2800   @ 1.86GHz<br/><br/> i386 - 2C/4T - RAM 4GB<br/>IGP 640MHz   | **Debian 10**<br/> Python 3.7.3<br/>Pillow 5.4.1<br/>PyGLM 1.99.3 <br/>PyOpenGL         3.1.5<br/>scipy            1.5.4<br/>numpy            1.19.4<br/>glfw             2.0.0<br/> xlrd             2.0.1<br/>|
        |d10      | Intel Pentium dual-Core CPU E5300 @ 2.60GHz<br/><br/>x86\_64 - 2C/2T - RAM 6GB<br/>NVIDIA GeForce 8600 GT/PCIe/SSE2 256MB<br/>| **Microsoft Windows 10**<br/>Python 3.8.7<br/>Pillow 8.1.0<br/> PyGLM      1.99.3<br/> PyOpenGL   3.1.5<br/> glfw       2.0.0<br/> numpy      1.20.0<br/> pip        21.0.1<br/> scipy      1.6.0<br/> xlrd       2.0.1    |
        |d9       | Intel Core2 Duo P8600 @ 2.4GHz<br/> x86\_64 - 2C/4T - RAM 4GB<br/>IGP GM45|**Fedora 34**<br/>Python 3.9.5<br/>Pillow 8.2.0<br/> PyGLM      2.2.0<br/> PyOpenGL   3.1.5<br/> glfw       2.1.0<br/> numpy      1.20.3<br/>pip        21.1.1<br/> scipy      1.6.3<br/> xlrd 2.0.1|
        
        
        # 5. Tests Data:
        Units tests are using some tests data (geometries, textures, material libs, ...).
        Tests data have been (usually) found on the web on: https://www.sharecg.com
        They are all free and usable for this product (non-commercial use or totally free) 
        
        In case of error on the license on embedded tests data, contact me. I'll fix it immediatly.
        
        Included (partial) Open Source models:
         - https://www.sharecg.com/v/21521/gallery/11/Poser/Project-Human-Female
         - https://www.sharecg.com/v/44417/gallery/5/3D-Model/P-51D-Mustang
         - https://www.sharecg.com/v/86927/gallery/5/3D-Model/Hawker-Tempest-Mk5
         - https://www.sharecg.com/v/82070/gallery/11/Poser/403-Peugeot-1953
        
        Full respect, credit and so on to their initial models and licenses:
          Lucien Lilippe
          Neil Wilson
          Pedro Caparros
        
        --> Many thanks to the contributors!
        
        # LICENCE:
          This library and its unit tests are delivered under the BSD license.
        
        
        KR, Olivier
        
        
        
        
        
        
        Unit Tests of pypos3d version 1.0.3 on mer. mai 26 23:09:54 CEST 2021
        2021-05-26 23:09:54+02:00 tuWFBasic.py Success
        2021-05-26 23:09:55+02:00 tuPaveList.py Success
        2021-05-26 23:10:21+02:00 tuWaveGeom.py Success
        2021-05-26 23:10:38+02:00 tuPoserFile.py Success
        2021-05-26 23:10:43+02:00 tuPlaneCut.py Success
        2021-05-26 23:10:50+02:00 tuPoserMeshed.py Success
        2021-05-26 23:11:24+02:00 tuQSlim.py Success
        2021-05-26 23:12:39+02:00 tuFigure.py Success
        Name                                                                        Stmts   Miss  Cover
        -----------------------------------------------------------------------------------------------
        /home/olivier/workspace/PyPoser/src/pypos3d/__init__.py                         4      0   100%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/ChannelImportAnalysis.py     201     12    94%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/Figure.py                    905     77    91%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/GeomCustom.py                174     23    87%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/PoserBasic.py                848     36    96%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/PoserFile.py                 653     60    91%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/PoserMeshed.py               822     70    91%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/SimpleAttribut.py            270     18    93%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/StructuredAttribut.py       1212    104    91%
        /home/olivier/workspace/PyPoser/src/pypos3d/pftk/__init__.py                    4      0   100%
        /home/olivier/workspace/PyPoser/src/pypos3d/propslim/MxBasic.py               212      7    97%
        /home/olivier/workspace/PyPoser/src/pypos3d/propslim/MxStdModel.py            324     24    93%
        /home/olivier/workspace/PyPoser/src/pypos3d/propslim/PropSlim.py              203     12    94%
        /home/olivier/workspace/PyPoser/src/pypos3d/propslim/__init__.py               12      0   100%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/DebugPlotter.py               63     63     0%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/GeomGroup.py                 781     53    93%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/PaveList2D.py                 66      0   100%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/PoserFileParser.py           112     10    91%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/Repere.py                     63      0   100%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/WFBasic.py                  1093     78    93%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/WaveGeom.py                 1295     97    93%
        /home/olivier/workspace/PyPoser/src/pypos3d/wftk/__init__.py                    4      0   100%
        -----------------------------------------------------------------------------------------------
        TOTAL                                                                        9321    744    92%
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
