
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
geom-export-obj
Advanced tools
Convert one (or more) simplicial complex geometry (positions/cells/normals/uvs) into an OBJ string.
Convert one (or more) simplicial complex geometry (positions/cells/normals/uvs) into an OBJ string.

npm install geom-export-obj
import geomExportObj from "geom-export-obj";
import { cube } from "primitive-geometry";
console.log(geomExportObj(cube()).output);
ObjectGeometry definition. All optional.
ObjectOffsets to for cells. Useful if appending to another obj string. Used internally.
ObjectOptions for exporter.
ObjectGeomExportObjReturnValue ⏏Parse one or more simplicial complex geometry and return an obj string and vertices offsets.
Kind: Exported function
| Param | Type | Default |
|---|---|---|
| geometries | SimplicialComplex | Array.<SimplicialComplex> | |
| [options] | GeomExportObjOptions | {} |
stringParse a simplicial complex and return an obj string
Kind: inner method of geomExportObj
See: http://paulbourke.net/dataformats/obj/
| Param | Type | Default | Description |
|---|---|---|---|
| geometry | SimplicialComplex | ||
| [offsets] | GeomExportObjOffsets | { positions: 0, normals: 0, uvs: 0 }} | |
| [defaultName] | string | A name for the object if geometry.name is not specified. |
ObjectGeometry definition. All optional.
Kind: global typedef
Properties
| Name | Type | Description |
|---|---|---|
| positions | Array.<number> | |
| normals | Array.<number> | |
| uvs | Array.<number> | |
| cells | Array.<number> | |
| name | string | The object name. |
| [materialName] | string | The object material name. |
ObjectOffsets to for cells. Useful if appending to another obj string. Used internally.
Kind: global typedef
Properties
| Name | Type |
|---|---|
| positions | number |
| normals | number |
| uvs | number |
ObjectOptions for exporter.
Kind: global typedef
Properties
| Name | Type | Default | Description |
|---|---|---|---|
| [header] | string | "# geom-export-obj\n" | Header to be prepended to the file. |
| [prefix] | string | "Mesh_" | Prefix for object names. |
| [offsets] | GeomExportObjOffsets | { positions: 0, normals: 0, uvs: 0 } | The initial offsets for cells. |
ObjectKind: global typedef
Properties
| Name | Type | Description |
|---|---|---|
| output | string | The obj as a string. |
| offsets | GeomExportObjOffsets |
MIT. See license file.
FAQs
Convert one (or more) simplicial complex geometry (positions/cells/normals/uvs/vertexColors) into an OBJ string (optionally optimized with number precision to reduce its size).
The npm package geom-export-obj receives a total of 0 weekly downloads. As such, geom-export-obj popularity was classified as not popular.
We found that geom-export-obj demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.