Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
108 changes: 108 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# Dependency directories
node_modules/
jspm_packages/
three/
.DS_Store
src/example04

# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release


# TypeScript v1 declaration files
typings/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# Next.js build output
.next

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and *not* Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port
78 changes: 77 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,77 @@
# threejs-modules
# threejs-modules

## How to use:

cd THREEJS-MODULES
npm install
npm run serve

## The basic library useage:

![avatar](/public/images/1.png)

## ABI_ThreeModule

- This folder is js library
It includes index.js, and below is the files structure image.

![avatar](/public/images/2.png)

index.js:
initThreeD():
@Paras: a dom element
Return: {Scene, Camera}
export:{initThreeD, loadObjFile, loadMTLFile, loadGLTFFile}

basefn.js:
createCamera():
@Paras: type, aspect, fov = 75, near = 1, far = 1000, s = 100 (The type is a bool, ture means PerspectiveCamera, false means OrthographicCamera)
Return Camera

createLight():
@Paras: color, intensity
Return {pointLight, ambientLight}

loadInmage():
@Paras: imageUrl, container, scene (the container is a dom element is same as initThreeD() parameter)

export { createCamera, createLight, loadImage }

gui.js:
buildGUI():
@Paras: - gui (the lil-GUI obj) - controlers (the objects while will be controled) - controler_flag (flags for different controlers)
export { buildGUI }

loadModules.js:
getMaterial():
@Paras: null
Return: material

loadObjFile():
@Paras: url(the .Obj file path/url), scene, camera, material=null

loadMTLFile():
@Paras:

- url_mtl: .mtl file url
- url_obj: .obj file url
- scene: the basic scene object
- camera: the camera object
- progressBar: the loading bar dom

loadGLTFFile():
@Paras:

- url: .gltf/.glb file url
- scene: the basic scene object
- camera: the camera object
- progressBar: the loading bar dom
export { loadObjFile, loadMTLFile, loadGLTFFile }

## App folder

This folder store the examples for how to use our library

- How to use example:
npm install -g live-server
liver-server
7 changes: 7 additions & 0 deletions babel.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
module.exports = {
presets: ["@babel/preset-env"],
plugins: [
"@babel/plugin-transform-runtime",
"@babel/plugin-proposal-class-properties",
],
};
2 changes: 2 additions & 0 deletions build/ABIThree.js

Large diffs are not rendered by default.

Loading