Hvordan kan jeg ændre et objekts lokale oprindelse uden at ændre objektplaceringen i verdensrummet.
Dette er objektet placeret i position (0,0,0) i verdensrummet
Dette er det samme objekt placeret i position (0,1,0) i verdensrummet, men med dets lokale oprindelse forskudt, så objektet er på samme sted
Er der en måde at gøre dette på i et enkelt trin?
Svar
En måde at gøre dette på er ved at gå til Rediger tilstand og placere 3D-markør hvor du vil have den nye oprindelse. (Når du gør dette, kan du være meget præcis ved at vælge hjørner, kanter eller ansigter og bruge dem som hjælpelinjer. Hvis du vælger flere punkter og klikker markøren på dem ved hjælp af Skift + S → Markør til valgt , Blender bruger gennemsnittet af de valgte punkter til at bestemme markørens nye placering) .
Du går derefter tilbage til Objekt -tilstand og bruger Ctrl + Alt + Skift + C → Oprindelse til 3D-markør for at opdatere eller ændre objektets oprindelse til placeringen af 3D-markøren .
For 2.9+ skal du gå til Objektmenu og vælge Indstil oprindelse > Oprindelse til 3D-markør .
Kommentarer
- Med al den opmærksomhed, dette har fået, ser det ud til at være en god idé, rightclickselect.c om / p / modellering / vqbbbc / interaktiv-pivot . Måske kunne nogen med lidt tid på hænderne tackle det. 🙂
- For korrekt centrering af objekt fra blender for enhed var det nødvendigt at placere 3D-markøren til nulkoordinaterne (0, 0, 0) og derefter placere midten af mesh-objektet ved hjælp af Origin to 3D Cursor.
- Mit omdrejningspunkt er blevet roteret, hvordan gendanner jeg rotationen, så den ikke roteres i forhold til rotation i verdenskoordinater?
- @ rien333 Bedst at stille et nyt spørgsmål, ikke sikker hvad du mener med " omdrejningspunkt er blevet roteret " .
- Jeg ville kan lide at opstemme dit svar hver gang jeg har brug for det. +4 indtil nu.
Svar
Dette er nyttigt at have som script, jeg skrev en tilbage i 2011. Det bruger 3d-markøren, men gendanner sin oprindelige position.
Et link til dette script er here
(inkluderer alle addon boilerplate) Når installationen er installeret, kan scriptet køres fra 3d view
> space bar
> Origin Move to Selected
Dette er den saftige bit:
def execute(self, context): saved_location = bpy.context.scene.cursor_location.copy() bpy.ops.view3d.snap_cursor_to_selected() bpy.ops.object.mode_set(mode = "OBJECT") bpy.ops.object.origin_set(type="ORIGIN_CURSOR") bpy.context.scene.cursor_location = saved_location bpy.ops.object.mode_set(mode = "EDIT") return {"FINISHED"}
For at binde dette til en nøglekombination:
-
User Preferences
>Input
>3D View
>3D View (Global)
>New
. - Udfyld derefter tekstfeltet med
object.origin_to_selected
, og Blender navngiver genvejen korrekt. Vælg derefter dine genvejstaster:
Mere arbejde foran, men praktisk, når det bruges hver time.
Kommentarer
- Meget praktisk! Jeg vidste, at det kunne gøres med scripting, men jeg ' er ny om dette emne
- Meget flot .. Dette burde være en del af Blender-distributionen.
- Hvordan kan tilføjes fortryd support?
- hmm, dette kan tage lidt længere tid, jeg fortæller dig, når jeg finder tid til at tilføje fortrydelse. det ' er ikke bare en simpel
bl_options = {'REGISTER', 'UNDO'}
- @rraallvv den bedste måde jeg kender i øjeblikket er, og dette fungerer kun umiddelbart efter oprindelseskontakten .. er at gå til objekttilstand og trykke på fortryd.
Svar
I Blender 2.81 kan transformeringsværktøjerne begrænses til kun at påvirke oprindelsen, hvilket gør det muligt at oversætte det direkte.
- Åbn Indstillinger i Værktøjsindstillinger
- I afsnittet Transform – påvirk kun markerer Origins
- Vælg et objekt, og juster oprindelsen ved hjælp af genvej G for at flytte den. Alternativt kan du også bruge værktøjet Flyt fra værktøjslinjen til den interaktive gizmo.
Kommentarer
- Ud over ovenstående bruger jeg også " Snap til " værktøjet og sæt det til " Kant " og " Nærmeste " så jeg får nøjagtig placering af oprindelsen skal være i selve kanten af objektet (hvilket normalt er hvad de fleste mennesker ønsker, når de flytter oprindelsen).
Svar
I objekttilstand skal du først vælge det objekt, du vil ændre oprindelsen. Klik derefter på Manipuler centerpunkter (eller Alt , ) Det er den 3. knap til højre fra Objekttilstand i 3D-overskriften.
Skift til redigeringstilstand, hvis dit objekt ikke er valgt, skal du trykke på A eller A to gange for at vælge alt.
Flyt det valgte objekt med 3D-manipulatoren. Det fungerer nu i forhold til midtpunktet. Når du er færdig, skal du gå tilbage til Objekttilstand og fjerne markeringen fra Manipulere centerpunkter (eller Alt , ).
Kommentarer
- Beklager, men du ' tager fejl. " manipulerer centerpunkter " -knappen fungerer kun med rotation, i " -objekt " eller " udgør " -tilstande. For at flytte et objekts drejepunkt er denne mulighed ubrugelig … Men manipulering af hele objektets hjørner i " rediger " mode gør tricket, som du sagde.