GSOF-3dWireFrame 1.1.0__tar.gz → 1.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Example_Drone.py +6 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Example_F16.py +6 -1
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2/GSOF_3dWireFrame.egg-info}/PKG-INFO +5 -2
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame.egg-info/SOURCES.txt +0 -1
- gsof_3dwireframe-1.1.2/GSOF_3dWireFrame.egg-info/requires.txt +2 -0
- {gsof_3dwireframe-1.1.0/GSOF_3dWireFrame.egg-info → gsof_3dwireframe-1.1.2}/PKG-INFO +5 -2
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/README.md +2 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/pyproject.toml +3 -2
- gsof_3dwireframe-1.1.0/GSOF_3dWireFrame/stlToObject.py +0 -32
- gsof_3dwireframe-1.1.0/GSOF_3dWireFrame.egg-info/requires.txt +0 -1
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/AUTHORS +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Drone_Class.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Example_dynamicWorld.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Example_motionWorld.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Example_staticWorld.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/F16_Class.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Assembly.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Lib3D.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Object_WireFrame.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Object_base.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Objects.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Utils.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/WireFrame_display.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/__init__.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/stlToObj.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/MathLib/MathLib.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/MathLib/__init__.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/attitudeViewer.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/modules/AttitudeViewer_class.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/modules/Controls.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/modules/__init__.py +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/Axis.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/F16.stl +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/LandingGear.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/Plume.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/Spark.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/cube.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/cube_flex.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/frame.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/house.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/net.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/plane.stl +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/objects/pyramid.json +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame.egg-info/dependency_links.txt +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame.egg-info/top_level.txt +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/LICENSE +0 -0
- {gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/setup.cfg +0 -0
|
@@ -6,6 +6,12 @@
|
|
|
6
6
|
* Author: Tzur Soffer
|
|
7
7
|
* Copyright (C) 2026 Tzur Soffer
|
|
8
8
|
"""
|
|
9
|
+
|
|
10
|
+
try:
|
|
11
|
+
import pymeshlab
|
|
12
|
+
except:
|
|
13
|
+
raise ValueError("could not find pymeshlab. Run ```pip install pymeshlab```")
|
|
14
|
+
|
|
9
15
|
import pygame, math
|
|
10
16
|
from MathLib import MathLib
|
|
11
17
|
from Lib3D.Object_WireFrame import Object_wireFrame
|
|
@@ -6,10 +6,15 @@
|
|
|
6
6
|
* Author: Guy Soffer
|
|
7
7
|
* Copyright (C) 2026 Guy Soffer
|
|
8
8
|
"""
|
|
9
|
+
|
|
10
|
+
try:
|
|
11
|
+
import pymeshlab
|
|
12
|
+
except:
|
|
13
|
+
raise ValueError("could not find pymeshlab. Run ```pip install pymeshlab```")
|
|
14
|
+
|
|
9
15
|
import pygame, math
|
|
10
16
|
from Lib3D.Object_WireFrame import Object_wireFrame
|
|
11
17
|
from Lib3D.Assembly import Assembly
|
|
12
|
-
#from Lib3D.Object_base import Object_base
|
|
13
18
|
from Lib3D import Objects
|
|
14
19
|
from Lib3D import WireFrame_display as DISP
|
|
15
20
|
from F16_Class import F16_View, Commands, State
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: GSOF_3dWireFrame
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.2
|
|
4
4
|
Summary: A 3D wireframe rendering library built on Pygame
|
|
5
5
|
Author-email: Guy Soffer <gsoffer@yahoo.com>
|
|
6
6
|
License: GPL-3.0-or-later
|
|
@@ -22,7 +22,8 @@ Requires-Python: >=3.9
|
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE
|
|
24
24
|
License-File: AUTHORS
|
|
25
|
-
Requires-Dist: pygame
|
|
25
|
+
Requires-Dist: pygame-ce
|
|
26
|
+
Requires-Dist: pymeshlab
|
|
26
27
|
Dynamic: license-file
|
|
27
28
|
|
|
28
29
|
# GSOF_3dWireFrame
|
|
@@ -36,11 +37,13 @@ Simple and basic 3D Wire-Frame drawing program.
|
|
|
36
37
|
## Running instructions
|
|
37
38
|
## Using pip (recommened)
|
|
38
39
|
- run `pip install GSOF_3dWireFrame`
|
|
40
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
39
41
|
|
|
40
42
|
## Manual install
|
|
41
43
|
- Clone
|
|
42
44
|
- Install requirements `pip install -r requirements.txt`
|
|
43
45
|
- run `pip install .`
|
|
46
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
44
47
|
- Open and run one of the code examples (e.g. `Example_staticWorld.py`)
|
|
45
48
|
|
|
46
49
|

|
|
@@ -10,7 +10,6 @@ GSOF_3dWireFrame/Example_motionWorld.py
|
|
|
10
10
|
GSOF_3dWireFrame/Example_staticWorld.py
|
|
11
11
|
GSOF_3dWireFrame/F16_Class.py
|
|
12
12
|
GSOF_3dWireFrame/attitudeViewer.py
|
|
13
|
-
GSOF_3dWireFrame/stlToObject.py
|
|
14
13
|
GSOF_3dWireFrame.egg-info/PKG-INFO
|
|
15
14
|
GSOF_3dWireFrame.egg-info/SOURCES.txt
|
|
16
15
|
GSOF_3dWireFrame.egg-info/dependency_links.txt
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: GSOF_3dWireFrame
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.2
|
|
4
4
|
Summary: A 3D wireframe rendering library built on Pygame
|
|
5
5
|
Author-email: Guy Soffer <gsoffer@yahoo.com>
|
|
6
6
|
License: GPL-3.0-or-later
|
|
@@ -22,7 +22,8 @@ Requires-Python: >=3.9
|
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE
|
|
24
24
|
License-File: AUTHORS
|
|
25
|
-
Requires-Dist: pygame
|
|
25
|
+
Requires-Dist: pygame-ce
|
|
26
|
+
Requires-Dist: pymeshlab
|
|
26
27
|
Dynamic: license-file
|
|
27
28
|
|
|
28
29
|
# GSOF_3dWireFrame
|
|
@@ -36,11 +37,13 @@ Simple and basic 3D Wire-Frame drawing program.
|
|
|
36
37
|
## Running instructions
|
|
37
38
|
## Using pip (recommened)
|
|
38
39
|
- run `pip install GSOF_3dWireFrame`
|
|
40
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
39
41
|
|
|
40
42
|
## Manual install
|
|
41
43
|
- Clone
|
|
42
44
|
- Install requirements `pip install -r requirements.txt`
|
|
43
45
|
- run `pip install .`
|
|
46
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
44
47
|
- Open and run one of the code examples (e.g. `Example_staticWorld.py`)
|
|
45
48
|
|
|
46
49
|

|
|
@@ -9,11 +9,13 @@ Simple and basic 3D Wire-Frame drawing program.
|
|
|
9
9
|
## Running instructions
|
|
10
10
|
## Using pip (recommened)
|
|
11
11
|
- run `pip install GSOF_3dWireFrame`
|
|
12
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
12
13
|
|
|
13
14
|
## Manual install
|
|
14
15
|
- Clone
|
|
15
16
|
- Install requirements `pip install -r requirements.txt`
|
|
16
17
|
- run `pip install .`
|
|
18
|
+
- run `pip install pymeshlab` (if you want to use stl files)
|
|
17
19
|
- Open and run one of the code examples (e.g. `Example_staticWorld.py`)
|
|
18
20
|
|
|
19
21
|

|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "GSOF_3dWireFrame"
|
|
7
|
-
version = "1.1.
|
|
7
|
+
version = "1.1.2"
|
|
8
8
|
description = "A 3D wireframe rendering library built on Pygame"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -28,7 +28,8 @@ classifiers = [
|
|
|
28
28
|
"Topic :: Multimedia :: Graphics :: 3D Rendering",
|
|
29
29
|
]
|
|
30
30
|
dependencies = [
|
|
31
|
-
"pygame",
|
|
31
|
+
"pygame-ce",
|
|
32
|
+
"pymeshlab"
|
|
32
33
|
]
|
|
33
34
|
|
|
34
35
|
[project.urls]
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import json
|
|
2
|
-
from stl import mesh
|
|
3
|
-
|
|
4
|
-
# Load the STL file
|
|
5
|
-
stl_file = 'objects/plane.stl'
|
|
6
|
-
your_mesh = mesh.Mesh.from_file(stl_file)
|
|
7
|
-
|
|
8
|
-
# Initialize lists for points and lines
|
|
9
|
-
points = []
|
|
10
|
-
lines = []
|
|
11
|
-
|
|
12
|
-
# Iterate over the vectors (triangles) in the mesh
|
|
13
|
-
for i in range(len(your_mesh.vectors)):
|
|
14
|
-
vertexes = your_mesh.vectors[i].tolist()
|
|
15
|
-
# Add the vertices (points) to the list
|
|
16
|
-
for vertex in vertexes:
|
|
17
|
-
points.append(vertex)
|
|
18
|
-
|
|
19
|
-
# Add the edges (lines) to the list
|
|
20
|
-
lines.append([i*3, i*3+1])
|
|
21
|
-
lines.append([i*3+1, i*3+2])
|
|
22
|
-
lines.append([i*3+2, i*3+0])
|
|
23
|
-
|
|
24
|
-
# Now you have a list of points and lines
|
|
25
|
-
objectDict = {"scale": 100.0,
|
|
26
|
-
"points_xyz": points,
|
|
27
|
-
"connections": lines}
|
|
28
|
-
with open("objects/stl.json", "w") as f:
|
|
29
|
-
json.dump(objectDict, f)
|
|
30
|
-
|
|
31
|
-
if __name__ == "__main__":
|
|
32
|
-
exit()
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
pygame
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/Object_WireFrame.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/Lib3D/WireFrame_display.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame/modules/AttitudeViewer_class.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{gsof_3dwireframe-1.1.0 → gsof_3dwireframe-1.1.2}/GSOF_3dWireFrame.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|