three-base 1.0.19 → 1.0.21

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.
Files changed (2) hide show
  1. package/README.md +64 -65
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -1,89 +1,88 @@
1
- 1. 创建一个 homeRender.ts 模块
2
1
 
3
- ```tsx
2
+ ```tsx
3
+ 1.创建一个 homeRender.ts 模块
4
+ import { AmbientLight, BoxGeometry, Mesh, MeshLambertMaterial, PointLight } from "three";
5
+ import ThreeBase, { Transition } from "three-base";
6
+ class HomeRender extends ThreeBase {
4
7
 
5
- import { AmbientLight, BoxGeometry, Mesh, MeshLambertMaterial, PointLight } from "three";
6
- import ThreeBase, { Transition } from "three-base";
7
- class HomeRender extends ThreeBase {
8
+ constructor() {
9
+ super();
10
+ }
8
11
 
9
- constructor() {
10
- super();
11
- }
12
+ // 环境光
13
+ ambientLight = (() => {
14
+ const ambientLight = new AmbientLight("#fff", 0.4);
15
+ this.scene.add(ambientLight);
16
+ return ambientLight;
17
+ })();
12
18
 
13
- // 环境光
14
- ambientLight = (() => {
15
- const ambientLight = new AmbientLight("#fff", 0.4);
16
- this.scene.add(ambientLight);
17
- return ambientLight;
18
- })();
19
+ //点光源
20
+ pointLight = (() => {
21
+ const pointLight = new PointLight("#fff", 0.4);
22
+ pointLight.position.set(50, 40, 50);
23
+ this.scene.add(pointLight);
24
+ return pointLight;
25
+ })();
19
26
 
20
- //点光源
21
- pointLight = (() => {
22
- const pointLight = new PointLight("#fff", 0.4);
23
- pointLight.position.set(50, 40, 50);
24
- this.scene.add(pointLight);
25
- return pointLight;
26
- })();
27
+ init() {
28
+ super.init();
29
+ // 使用这个方法来初始化相机的位置和朝向
30
+ this.resetLookAt({
31
+ center: new Vector3(0, 0, 0),
32
+ position: new Vector3(10.954, 19.452, 39.811)
33
+ });
27
34
 
28
- init() {
29
- super.init();
30
- // 使用这个方法来初始化相机的位置和朝向
31
- this.resetLookAt({
32
- center: new Vector3(0, 0, 0),
33
- position: new Vector3(10.954, 19.452, 39.811)
34
- });
35
+ }
35
36
 
36
- }
37
+ box = (() => {
38
+ const geometry = new BoxGeometry(10, 10, 10);
39
+ const matearil = new MeshLambertMaterial({ color: 0xfff });
40
+ const mesh = new Mesh(geometry, matearil);
37
41
 
38
- box = (() => {
39
- const geometry = new BoxGeometry(10, 10, 10);
40
- const matearil = new MeshLambertMaterial({ color: 0xfff });
41
- const mesh = new Mesh(geometry, matearil);
42
+ //创建一个动画对象
43
+ const transition = new Transition({ rotationY: 0 });
42
44
 
43
- //创建一个动画对象
44
- const transition = new Transition({ rotationY: 0 });
45
+ // 动画对象播放回调
46
+ transition.onChange(({ rotationY }) => {
47
+ mesh.rotation.y = rotationY;
48
+ });
45
49
 
46
- // 动画对象播放回调
47
- transition.onChange(({ rotationY }) => {
48
- mesh.rotation.y = rotationY;
49
- });
50
+ mesh.position.set(0, 0, 0);
51
+ mesh.userData = { cursor: "pointer", enableEvent: true };
50
52
 
51
- mesh.position.set(0, 0, 0);
52
- mesh.userData = { cursor: "pointer", enableEvent: true };
53
+ // 提供了常用的鼠标事件
54
+ mesh.addEventListener("click", e => { });
55
+ mesh.addEventListener("dbclick", e => { });
53
56
 
54
- // 提供了常用的鼠标事件
55
- mesh.addEventListener("click", e => { });
56
- mesh.addEventListener("dbclick", e => { });
57
+ mesh.addEventListener("leftclick", e => {
58
+ transition.set({ rotationY: Math.random() * 5 });
59
+ });
60
+ mesh.addEventListener("rightclick", e => { });
61
+ mesh.addEventListener("mouseenter", e => { });
62
+ mesh.addEventListener("mouseleave", e => { });
63
+ mesh.addEventListener("mousemove", e => { });
64
+ mesh.addEventListener("mousedown", e => { });
65
+ mesh.addEventListener("mouseup", e => { });
57
66
 
58
- mesh.addEventListener("leftclick", e => {
59
- transition.set({ rotationY: Math.random() * 5 });
60
- });
61
- mesh.addEventListener("rightclick", e => { });
62
- mesh.addEventListener("mouseenter", e => { });
63
- mesh.addEventListener("mouseleave", e => { });
64
- mesh.addEventListener("mousemove", e => { });
65
- mesh.addEventListener("mousedown", e => { });
66
- mesh.addEventListener("mouseup", e => { });
67
+ this.scene.add(mesh);
68
+ return mesh;
69
+ })();
67
70
 
68
- this.scene.add(mesh);
69
- return mesh;
70
- })();
71
+ }
71
72
 
72
- }
73
73
 
74
+ const homeRenderer = new HomeRender();
74
75
 
75
- const homeRenderer = new HomeRender();
76
+ // 导出这个单例对象
77
+ export default homeRenderer;
76
78
 
77
- // 导出这个单例对象
78
- export default homeRenderer;
79
79
 
80
80
 
81
+ 2.添加到div里面
82
+ import homeRenderer form "./homeRenderer.ts";
83
+ homeRenderer.setContainer( document.getElementById("div") );
81
84
 
82
- 2.添加到div里面
83
- import homeRenderer form "./homeRenderer.ts";
84
- homeRenderer.setContainer( document.getElementById("div") );
85
85
 
86
86
 
87
87
 
88
-
89
- ```
88
+ ```
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "three-base",
3
- "version": "1.0.19",
3
+ "version": "1.0.21",
4
4
  "description": "three 3d three-base",
5
5
  "keywords": [
6
6
  "three",
7
7
  "3d",
8
8
  "three-base",
9
- "xsh"
9
+ "做项目找我 qq:389652405"
10
10
  ],
11
11
  "main": "index.ts",
12
12
  "module": "index.ts",