Skip to main content

Unit Tests for Wavefront files and Poser files manipulation library

Project description

This file is the README of the library pypos3d.

  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 replace Pojamas.DATA3D library with a very close interface. Application ePOSER (in Eclipse RCP) is replaced by a new MMI concept based on LibreOffice/Python.

This Python library intends to give high level operations for some 3D files:

  • WaveFront Files (.OBJ and compressed .obz [gziped]):

    • Read / Write
    • Groups manupilation : add, remove, optimization, fusion
    • High level method: Plane Split, Plane Slice, Remesh, Hole filling

    All Wavefront functions (classes) are in the pypos3d.wftk package

  • Poser Files (.PZ3, .CR2, .PZZ, .CRZ, .PP2, .PPZ):

    • Read / Write
    • Actors, Props, Cameras, ... manipulations: add, remove, rename
    • Morph report and morph report on alternate geometries
    • Cleaning

    All Poser functions (classes) are in the pypos3d.pftk packages

Initialy, Pojamas project was a Eclipse RCP application based on a SWT/Java3D MMI. For maintenance reason, this RCP application will be discontinued and shall be replaced by another one (cf. chapter 4 'GUI').

  1. INSTALLATION: ================

2.1 Library Installation:

The library shall be installed with pip:

python3 -m pip pypos3d

2.2 GUI Install:

  1. On Linux (and probably Mac - To Be Confirmed): Install first the library and its dependencies Launch the GUI installer : PyPos3D-App-Installer.ods Clic on Check install first and then on Install Close LibreOffice

    The installation is finished, you can use the PyPos3DLO.ods sheet

  2. On Windows (and for pure LibreOffice Installation on Linux) You will need to extend the internal Python installation with the dependencies. Install the LibreOffice extension developed by Mauricio Baeza https://gitlab.com/mauriciobaeza/zaz-pip

    Using ZazPip : Install numpy, scipy and xlrd

    Launch the GUI installer : PyPos3D-App-Installer.ods Clic on Check install first and then on Install Close LibreOffice

    The installation is finished, you can use the PyPos3DLO.ods sheet

  1. DESIGN: ========== The pypos3d Library has the following structure:
  • langutil : A personal generic package for some utilities

  • pypos3d.wftk : WaveFront manipulation package The main classes are pypos3d.wftk.WaveGeom and pypos3d.wftk.GeomGroup. Refer to WaveGeom documention for information

  • pypos3d.pftk : Poser files manipulation package

  • Dependencies :

    • numpy
    • scipy
    • xlrd
  1. TESTS: ========= This library is tested with unitest with a target coverage rate over 80%. Unit tests are delivered in another package Installation and commissionning tests are performed on:
  • CentOS 8, 7
  • Fedora >30
  • Microsoft Windows 10
  1. GUI: ======= As mentioned previously, the former Pojamas application was an Eclipse RCP (obsolete RCP3). In the future, a WxPython application is forseen. For tests purpose, a LibreOffice calc based GUI is proposed. Refer to: Pojamas for download The GUI requires LibreOffice >= 6.4 on Windows and LibreOffice >= 6.3 on Linux (CentOS > 7)

LICENCE: This library is delivered under the BSD license.

KR, Olivier


Dev Notes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypos3dtu-0.1.7.tar.gz (16.3 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page