Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • CreatiCode
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

CreatiCode Scratch Forum

  1. CreatiCode Forum
  2. 知识库
  3. 三维积木
  4. 复制到镜像位置

复制到镜像位置

Scheduled Pinned Locked Moved 三维积木
1 Posts 1 Posters 881 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • CreatiCodeI Offline
    CreatiCodeI Offline
    CreatiCode
    wrote on last edited by admin
    #1

     

    预备知识

    • 矩阵复制

     
     

    介绍

    我们周围的很多物体都是对称的。举个例子,一辆车的四个轮胎都在彼此的镜像位置上,可以是在左右的镜像位置,也可以在前后的镜像位置。

     
    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/829abece-fe51-41f2-a313-037c2ff23602.png" width="300" style="">
     

    如果你添加了一个轮子,如果能直接把它复制到其他三个位置的话,那一定很棒对吧?你其实可以简单地通过使用”复制到镜像位置“编程积木来做到这点:

     
    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/39f2c39c-91d9-4261-849d-d5b4b98bc649.png" width="400" style="">
     

    需要注意的是,复制地物体将会和原本的物体享有一样的数据,比如材质,动画和父节点。

     
     

    镜像位置种类

    当你使用“复制到镜像位置”编程积木时,你需要选择镜像种类。就像展示的一样,种类有7种。

    左右

    如果你选择了“左右”,那么现有角色物体的新复制体将会被放置在沿着X轴的镜像位置上。

    举个例子,如果角色物体在X = 150的位置上,那么新的复制体将会被放置在 X = -150的位置上。但是如果当原有角色物体在X = -150的位置,那么他的复制体将会在 X = 150的位置上。复制体将会和原有的物体享有一样的Y和Z位置。

     
    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/39953fd8-1fae-4abe-9756-11bc48730499.gif" width="1150" style="">

     

    如果原物体绕Z轴有一定的旋转角度,那么新复制的物体会被向相反方向旋转。就像下图展示的一样,原有的盒子绕Z轴有30度的旋转,所以被复制的盒子有-30度的旋转。

     
    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/806fdfd2-35a6-4087-9d4e-d3f79537a625.gif" width="1150" style="border-radius: 5px; border: 1px solid #29622d;">

     

    最后,被复制物体的名称将会反映镜像的种类。在这个例子中,原有的物体被命名为“盒子”,而它在左边的复制体将会被命名为“盒子_左”。

     

    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/0c20b8b8-a09a-4839-9881-7df6f53aabb2.png" width="440" style="border-radius: 5px; border: 1px solid #29622d;">

     
     

    前后

    这个选项也会添加一个复制体,而它将会被放置在沿着Y轴的镜像位置。举个例子,如果原有物体处于Y=100的位置,那么复制体将会处于Y=-100的位置。复制体的名字也会包含"_前"或者"_后"。

    另外,两个物体对于Z轴的旋转的总和将会是180度。

     
    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/0d939003-6467-4685-aad6-9c74198d4558.gif" width="1150" style="">

     

     

    上下

    这个选项也会添加一个复制体,而它会被放置在沿着Z轴的镜像位置。举个例子,如果物体处于Z = 50的位置,那么复制体将会处于Z = -50的位置。复制体的名字也会包含"_上"或者"_下"。

     
     

    左右 + 前后

    这个选项帮你一下子添加3个复制体。“左右”种类将会产生一个复制体,“前后”产生另外一个,而第三个物体会在原有物体的X和Y方向都相反的镜像位置。

    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/53d55662-1299-47ea-bedb-181f6ef96a2f.gif" width="1150" style="border-radius: 5px; border: 1px solid #29622d;">

     

    复制体的名称也会反应他们的镜像种类:

     

    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/fb5fb274-03c1-4c8c-8eb9-e7c93d4e9d1f.png" width="420" style="border-radius: 5px; border: 1px solid #29622d;">

     

     

    左右+上下

    这个选项会在X和Z位置的相反方向添加三个复制体。

     

    前后+上下

    这个选项会在Y和Z位置的相反方向添加三个复制体。

     

    全部

    这个选项会在X,Y和Z位置的相反方向添加七个复制体。举个例子:

    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/09c28c4c-fba5-4974-8b61-4da79dafaf87.gif" width="1150" style="border-radius: 5px; border: 1px solid #29622d;">

     

    https://cdncreaticodecom.b-cdn.net/scratch-gui-projects/forum/47824959-201b-48a2-ad56-e593ad02e75d.png" width="420" style="border-radius: 5px; border: 1px solid #29622d;">

    1 Reply Last reply
    0
    • CreatiCodeI CreatiCode pinned this topic on

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better 💗

    Register Login
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • CreatiCode