The easiest way to calculate the projected/frontal area of an STL.
Project description
Most lift and drag calculations require the use of a frontal/projected area. This is normally not that big of a deal, especially when dealing with nice clean CAD files. Unfortunately, in fast-paced design environments (motorsport especially), you'll often get a collection of STL geometry files instead. This is annoying for a number of reasons, but mainly because there are several methods for computing the frontal area of an STL and all of them involve a fairly tedious/lengthy process. pArea aims to solve this with a single command.
Installation
pip install parea
Usage
As a simple example, the cube STL located within the tests
directory has a projected area of 4.0 along all three coordinate axes. To validate this, simply run the following (assuming you've downloaded cube_ascii.stl into your current working directory):
parea -stl cube_ascii.stl -x
For models comprised of multiple STL files, simply separate the file names with a space:
parea -stl file_1.stl file_2.stl file_3.stl -x
Or use shell-style wildcards:
parea -stl file_*.stl -x
When simulating ground vehicles with non-rigid wheels, you will need to account for the tire deformation and subsequent ride height drop. This can be facilitated using the -floor
flag followed by a floor height float value. Note that floor height is in reference to the vertical axis of the specified projection plane.
parea -stl file_*.stl -x -floor 0.0125
Since the projection vector is x
, our projection plane is therefore yz
yielding a projected area based off all geometry above z=0.0125.
Options
vectors: -x
, -y
, -z
planes: -yz
/-zy
, -xz
/-zx
, -xy
/-yx
References
- Computational Geometry: Algorithms and Applications (3rd Edition) by Mike de Borg, Otfried Cheong, Mark van Kreveld, and Mark Overmars
- Computational Geometry in C (2nd Edition) by Joseph O'Rourke
- Finite Element Mesh Generation by Daniel S.H. Lo
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file parea-0.1.1.tar.gz
.
File metadata
- Download URL: parea-0.1.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6439e804b31a5bf6a4ae7bd51aecd2293b1a466b857b632b368326e568322426 |
|
MD5 | ce20155c303d6d356daa7c620fe1cba5 |
|
BLAKE2b-256 | 7ae16ab2efe9d75ec5c1bc1b60ca1c29d020f6e67417d9559947a259302b5283 |
File details
Details for the file parea-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: parea-0.1.1-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8759fd5e599237ae89bb480ff67bc9b64f466d08621873ab329652fb0e7596c |
|
MD5 | 1a7625a276e69d3b8fd0a2f077cd0a8e |
|
BLAKE2b-256 | 7db9b4169be6809819fada2ed66715f28000eef722de6168a31ee4c9c47ced47 |