国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ThreeJS-縮放、旋轉(zhuǎn)(四)

這篇具有很好參考價值的文章主要介紹了ThreeJS-縮放、旋轉(zhuǎn)(四)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

代碼:

<template>

? <div id="three_div">

? </div>

</template>

? <script>

import * as THREE from "three";

import {OrbitControls } from 'three/examples/jsm/controls/OrbitControls'

export default {

? name: "HOME",

? components: {

? ? // vueQr,

? ? // glHome,

? },

? data() {

? ? return {

? ? };

? },

? mounted() {

? ? //使用控制器控制3D拖動旋轉(zhuǎn)OrbitControls

? ? //控制3D物體移動

? ? //1.創(chuàng)建場景

? ? const scene = new THREE.Scene();

? ? console.log(scene)

? ?

? ? //2.創(chuàng)建相機(jī)

? ? const camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);

? ? //設(shè)置相機(jī)位置

? ? camera.position.set(0,0,10);

? ? //將相機(jī)添加到場景

? ? scene.add(camera);

? ? //添加物體

? ? //創(chuàng)建幾何體

? ? const cubeGeometry = new THREE.BoxGeometry(2,2,2);

? ? const cubeMaterial = new THREE.MeshBasicMaterial({color: 0xffff00});

? ? //根據(jù)幾何體和材質(zhì)創(chuàng)建物體

? ? const mesh ?= new THREE.Mesh(cubeGeometry, cubeMaterial);

? ? //將物體加入到場景

? ? scene.add(mesh);

? ? //添加坐標(biāo)軸輔助器

? ? const axesHepler = new THREE.AxesHelper(5)

? ? scene.add(axesHepler)

? ? //初始化渲染器

? ? const ?render = new THREE.WebGLRenderer();

? ? //設(shè)置渲染器的尺寸

? ? render.setSize(window.innerWidth, window.innerHeight);

? ? //使用渲染器,通過相機(jī)將場景渲染進(jìn)來

? ? //創(chuàng)建軌道控制器,可以拖動,控制的是攝像頭

? ? const controls = new OrbitControls(camera, render.domElement);

? ? //將webgl渲染的canvas內(nèi)容添加到body上

? ? document.getElementById('three_div').appendChild(render.domElement);

? ? //修改3D位置

? ? mesh.position.set(0, 0, 0);

? ?// render.render(scene, camera);

? ? //渲染下一幀的時候就會調(diào)用回調(diào)函數(shù)

? ? let i=1;

? ? //縮放

? ? mesh.scale.x = 5;

? ? let renderFun = ()=>{

? ? ? //位移

? ? ? mesh.position.x += 0.02*i;

? ? ? //旋轉(zhuǎn)吧

? ? ? mesh.rotation.x += 0.01;

? ? ?// mesh.scale.x += 0.02*i;

? ? ? if(mesh.position.x >= 5){

? ? ? ? i = -1;

? ? ? }

? ? ? if(mesh.position.x <= 0){

? ? ? ? i = 1;

? ? ? }

? ? ? console.log(1)

? ? ? //需要重新繪制canvas畫布

? ? ? render.render(scene, camera);

? ? ? //監(jiān)聽屏幕刷新(60HZ,120HZ),每次刷新觸發(fā)一次requestAnimationFrame回調(diào)函數(shù)

? ? ? //但是requestAnimationFrame的回調(diào)函數(shù)注冊生命只有一次,因此需要循環(huán)注冊,才能達(dá)到一直調(diào)用的效果

? ? ? window.requestAnimationFrame(renderFun);

? ? }

? ?// window.requestAnimationFrame(renderFun);

? ? renderFun();


?

? },

? ?methods: {

? },

};

</script>

<style scoped lang="scss">

</style>

?效果:

ThreeJS-縮放、旋轉(zhuǎn)(四)文章來源地址http://www.zghlxwxcb.cn/news/detail-482967.html

到了這里,關(guān)于ThreeJS-縮放、旋轉(zhuǎn)(四)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Three.js——十五、Box3、相機(jī)動畫、lookAt()視線方向、管道漫游案例、OrbitControls旋轉(zhuǎn)縮放限制、以及相機(jī)控件MapControls

    Three.js——十五、Box3、相機(jī)動畫、lookAt()視線方向、管道漫游案例、OrbitControls旋轉(zhuǎn)縮放限制、以及相機(jī)控件MapControls

    正投影相機(jī)和透視相機(jī)的區(qū)別 如果都以高處俯視去看整個場景,正投影相機(jī)就類似于 2d 的可視化的效果,透視相機(jī)就類似于人眼觀察效果 調(diào)整 left, right, top, bottom 范圍大小 如果你想整體預(yù)覽全部立方體,就需要調(diào)整相機(jī)的渲染范圍,比如設(shè)置上下左右的范圍。 使用場景:正

    2024年02月04日
    瀏覽(53)
  • 【VUE】Unterminated template literal:拼接字符串包括<script></script>時報錯誤

    【VUE】Unterminated template literal:拼接字符串包括<script></script>時報錯誤

    vue拼接字符串包括script標(biāo)簽時報錯誤提示Unterminated template literal解決方法加反斜杠就可以,在script結(jié)束標(biāo)簽里邊加反斜杠 /script

    2024年02月13日
    瀏覽(25)
  • Three.JS教程5 threejs中的材質(zhì)

    Three.JS教程5 threejs中的材質(zhì)

    Three.js中的材質(zhì)(Material)是實現(xiàn)引人注目的3D效果的關(guān)鍵組件之一。本篇博客中,我們將深入探討Three.js中的材質(zhì)類型、屬性和用法。 在Three.js中,材質(zhì)是應(yīng)用于幾何體(Geometry)的外觀和紋理的規(guī)則。它們決定了對象在場景中如何反射光線、顯示顏色、反射環(huán)境等。 Three.j

    2024年02月21日
    瀏覽(95)
  • ThreeJS-3D教學(xué)三:平移縮放+物體沿軌跡運動

    ThreeJS-3D教學(xué)三:平移縮放+物體沿軌跡運動

    我們在項目中會有一些這樣的需求,我們可視化一個場景,需要俯視、平移、縮放,方便觀察場景中的數(shù)據(jù)或者模型,之所以把這個案例拿出來 1、這是個很實用的需求,我相信很多人會用到 2、我自己認(rèn)為在實際案例中我們可以學(xué)習(xí)相關(guān)知識點更易吸收些 為了豐富本篇文章

    2024年02月03日
    瀏覽(21)
  • 【THREE.JS學(xué)習(xí)(3)】使用THREEJS加載GeoJSON地圖數(shù)據(jù)

    【THREE.JS學(xué)習(xí)(3)】使用THREEJS加載GeoJSON地圖數(shù)據(jù)

    本文接著系列文章(2)進(jìn)行介紹,以VUE2為開發(fā)框架,該文涉及代碼存放在HelloWorld.vue中。 相較于上一篇文章對div命名class等,該文簡潔許多。 接著引入核心庫 其中,{OrbitControls}為控制器,加載后可以通過鼠標(biāo)來移動加載數(shù)據(jù)的方向、放縮等 Three.js中的坐標(biāo)系是以單位為米(

    2023年04月09日
    瀏覽(106)
  • ThreeJS-紋理旋轉(zhuǎn)、重復(fù)(十一)

    ThreeJS-紋理旋轉(zhuǎn)、重復(fù)(十一)

    ?文檔:three.js docs 關(guān)鍵代碼: ? ?//設(shè)置旋轉(zhuǎn)中心,默認(rèn)左下角 ? ? docColorLoader.center.set(0.5,0.5); ? ? //圍繞旋轉(zhuǎn)中心逆時針旋轉(zhuǎn)45度 ? ? docColorLoader.rotation = Math.PI/4; 完整代碼: template ? div id=\\\"three_div\\\"/div /template ? script import * as THREE from \\\"three\\\"; import { OrbitControls } from \\\"three/example

    2023年04月08日
    瀏覽(18)
  • threejs點擊獲取三維坐標(biāo)(Three.js獲取鼠標(biāo)點擊的三維坐標(biāo))

    綁定點擊事件,通過 THREE.Raycaster 光線投射,用于確定鼠標(biāo)點擊位置上有哪些物體, raycaster.intersectObjects(scene.children) 返回點擊位置上所有的物體的數(shù)組;我們用 var selected = intersects[0] 取第一個,也就是最前面的那個物體;在通過 selected.point 取點坐標(biāo)

    2024年02月11日
    瀏覽(91)
  • 【js&threeJS】入門three,并實現(xiàn)3D汽車展示廳,附帶全碼

    【js&threeJS】入門three,并實現(xiàn)3D汽車展示廳,附帶全碼

    首先放個最終效果圖: ? 三維(3D)概念: 三維(3D)是一個描述物體在三個空間坐標(biāo)軸上的位置和形態(tài)的概念。相比于二維(2D)只有長度和寬度的平面,三維增加了高度或深度這一維度 在三維空間中,我們使用三個獨立的坐標(biāo)軸來描述物體的位置。通常使用笛卡爾坐標(biāo)系

    2024年02月11日
    瀏覽(703)
  • ThreeJS-3D教學(xué)六-物體位移旋轉(zhuǎn)

    ThreeJS-3D教學(xué)六-物體位移旋轉(zhuǎn)

    之前文章其實也有涉及到這方面的內(nèi)容,比如在ThreeJS-3D教學(xué)三:平移縮放+物體沿軌跡運動這篇中,通過獲取軌跡點物體動起來,其它幾篇文章也有旋轉(zhuǎn)的效果,本篇我們來詳細(xì)看下,另外加了tween.js知識點,tween可以很好的協(xié)助 three 做動畫,與之相似的還有 gsap.js方法類似。

    2024年02月04日
    瀏覽(24)
  • Three.js--》前端開發(fā)者掌握3d技術(shù)不再是夢,初識threejs

    Three.js--》前端開發(fā)者掌握3d技術(shù)不再是夢,初識threejs

    ????????這十年來 web 得到了快速的發(fā)展,隨著 webgl 的普及,網(wǎng)頁的表現(xiàn)能力越來越強(qiáng)大,網(wǎng)頁上已經(jīng)開始可以做出很多復(fù)雜的動畫和精美的效果,還可以通過 webgl 在網(wǎng)頁中繪制高性能的3d圖形,別的不說,凡是入門程序員都離不開github這個網(wǎng)站,細(xì)心的人都會發(fā)現(xiàn),gi

    2024年02月01日
    瀏覽(98)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包