Coody Napisano 8 Maj 2011 Napisano 8 Maj 2011 Witajcie, Tak jak skrótowo napisałem w temacie, teraz to rozwinę. Chodzi mi o skrypt w Python'ie (Blender 2.49), który utworzy w oknie Stożek, walec oraz koło (nie mylić ze sferą ;) ). Objekt ma się tworzyć w oknie 3D View, nie w Game Engine. Chodzi i standardowe figury które można utworzyć w Blenderze z menu Mesh. Z góry Wam dziękuję. Dla przykładu wkleję kod który odkopałem na stronach i lekko zmodyfikowałem: Skryp tworzy Sześcian. (na pewno jest prostrzy sposób, niestety znajomość tego języka programowania jest u mnie praktycznie zerowa) import Blender as X # vertices A = [0.5,1.5,0] B = [0.5,-0.5,0] C = [-1.5,-0.5,0] D = [-1.5,1.5,0] E = [0.5,1.5,2] F = [0.5,-0.5,2] G = [-1.5,-0.5,2] H = [-1.5,1.5,2] verts = [A,B,C,D,E,F,G,H] faces = [[0,1,2,3], [0,1,5,4], [1,2,6,5], [2,3,7,6], [3,0,4,7], [4,5,6,7]] # create Object ob = X.Object.New('Mesh', 'MeshOb') # create ObData me = X.Mesh.New('myMesh') # add vertices me.verts.extend( verts ) # create faces me.faces.extend( faces ) ob.link( me ) scene = X.Scene.GetCurrent() scene.link( ob ) X.Redraw(-1) # print out the verts, edges and faces of our mesh for v in me.verts: print v for e in me.edges: print e for f in me.faces: print f
Coody Napisano 9 Maj 2011 Autor Napisano 9 Maj 2011 Znalazłem jeszcze coś takiego (tworzy Sferę): from Blender import Mesh, Material import bpy def sphere(scn, segments, rings, radius, x, y, z, r, g, b, a): me = Mesh.Primitives.UVsphere(segments, rings, radius) mat = Material.New('SphereMat') mat.rgbCol = [r, g, b] mat.setAlpha(a) me.materials += [mat] ob = scn.objects.new(me, 'SphereOb') ob.setLocation(x, y, z) sce = bpy.data.scenes.active sphere(sce, 32, 32, 4, 1, 1, 1, .2, .5, .6, 1.0)
Coody Napisano 11 Maj 2011 Autor Napisano 11 Maj 2011 Czy ktoś może wspomóc mnie w tej kwestii? Potrzebuję kod skryptu pythona który utowrzy Stożek (Cone) bądź Walec (Cylinder) i Koło (Circle). Proszę o Was o pomoc, jest to bardzo ważna kwestia. Byłbym bardzo wdzięczny za taki skrypt. Pozdrawiam
szczuro Napisano 11 Maj 2011 Napisano 11 Maj 2011 (edytowane) ważna kwestia ? pewnie jakieś zaliczenie, na które nie chciało się pouczyć, bo to jest banał który można otrzymać przerabiając podane skrypty takie cos moze byc ? http://www.blender.org/documentation/242PythonDoc/MeshPrimitives-module.html from Blender import Mesh, Window import bpy scn = bpy.data.scenes.active verts=10 diameter=0.5 length=2 cylinder = Mesh.Primitives.Cylinder(verts, diameter, length) obCylinder = scn.objects.new(cylinder, 'CylinderOb') verts=10 diameter=1 length=1 cone = Mesh.Primitives.Cone(verts, diameter, length) obCone = scn.objects.new(cone, 'ConeOb') verts=10 diameter=2 circle = Mesh.Primitives.Circle(verts, diameter) obCircle = scn.objects.new(circle, 'CircleOb') Window.Redraw() edit:// była sfera jest cylinder Edytowane 11 Maj 2011 przez szczuro
Coody Napisano 11 Maj 2011 Autor Napisano 11 Maj 2011 No stronę którą podałeś widziałem, ale nie wiedziałęm o co chodzi. Nie znam się na tym języku, a czasu mam bardzo mało żeby go opanować. A to nie zaliczenie, tylko inżynierka ;) Wielkie dzięki!!!
szczuro Napisano 12 Maj 2011 Napisano 12 Maj 2011 (edytowane) Jak to inżynierka to jeszcze gorzej miałeś 3 lata aby się do tego przygotować. ale inżynierzy nam rosną :P nie potrafią programować, a przede wszystkim czytać dokumentacji technicznej i myśleć. Mają wszystko na tacy a nie są w stanie dostosować do swoich potrzeb :eek: z tej strony z której nie wiedziałeś o co chodzi, tak żeby szybko Cię doedukować. Example (czytaj przykład): from Blender import * me = Mesh.Primitives.Cube(2.0) # create a new cube of size 2 ob = Object.New('Mesh') # create a new mesh-type object ob.link(me) # link mesh datablock with object sc = Scene.GetCurrent() # get current scene sc.link(ob) # add object to the scene Window.RedrawAll() # update windows i w linijce z komentarzem "# create a new cube of size 2" zmianiasz "Cube(2.0)" na wybraną z Function Summary np Circle(verts, diameter) a zamiast verts i diameter wstawiasz wartości. Wielka filozofia :P Edytowane 12 Maj 2011 przez szczuro
n-pigeon Napisano 12 Maj 2011 Napisano 12 Maj 2011 deshu tak, a właściwie nie, "tajpy" są, tylko są dynamicznie przypisywane Coody ... nie szczuro nam się zbulwersował :) w sumie ja też :D
szczuro Napisano 12 Maj 2011 Napisano 12 Maj 2011 n-pigeon: oj bo to jest tak proste, że średnio rozgarnięty inż powinien sobie z tym poradzić :P pozdrawiam mgr inż szczuro :)
Coody Napisano 12 Maj 2011 Autor Napisano 12 Maj 2011 szczuro: (mgr inż. szczuro ;) ) Może i dla Ciebie to jest proste, dla mnie pewnie też byłoby po, jak to podałeś 3 latach. Tylko że ja nie miałem na studiach Blendera, pracuję na nim od 6 miesięcy? Nie jestem na studiach hmm graficznych, tylko na Sieciach (xD). A wrzutę dotyczącą skryptu dostałem 3 tygodnie przed oddaniem -_-", więc zwróciłem się do Was o Pomoc. Jestem teraz desperatem w sprawie skryptów ;) A jest to ciekawe, jakbym miał więcej czasu na pewno bym się w tym wyszkolił :P Dzięki jeszcze raz za pomoc.
szczuro Napisano 12 Maj 2011 Napisano 12 Maj 2011 (edytowane) mi nie chodzi czy znasz czy nie blendera, jesli miales choc troche programowania (a na sieciach jeśli to sieci komputerowe to raczej miałeś), to powinieneś umieć rozróżnić w większości języków zmienne, funkcje i komentarze. Gdy czytasz przykład na stronie z komentarzem "#create a new Cube" a pod spodem masz tabelkę różnymi wartościami i między innymi Cube, to tak trudno się domyśleć, że można to zmienić na wartość z tabelki ? Edytowane 12 Maj 2011 przez szczuro
n-pigeon Napisano 12 Maj 2011 Napisano 12 Maj 2011 Dobra spokój :D Coody nie jest jeszcze inżynierem :) teraz wskoczy na właściwy tor i będzie świecił przykładem dla innych studentów politechniki, którzy prawdopodobnie nawet nie wiedzą co to jest python :)
wjaworski Napisano 12 Maj 2011 Napisano 12 Maj 2011 Parę dni temu widziałem podobny post z podobnym problemem na blender.pl - być może to ta sama osoba. (Tam także pomarudziliśmy nad podeściem do pracy, bądź co bądź, inżynierskiej, ale nie było nikogo tak wyrozumiałego jak szczuro)
szczuro Napisano 12 Maj 2011 Napisano 12 Maj 2011 n-pigeon: ale ubiega się o ten tytuł, a co jeśli dawaliby prawo jazdy ludziom którzy nie czytają znaków drogowych ...hmm... choć w sumie dają :P wjaworski: tyle że ja nie wiedziałem że to inżynierska, wtedy wkleiłbym sam link.
Coody Napisano 14 Maj 2011 Autor Napisano 14 Maj 2011 szczuro: jako "sieciowiec", miałem programowanie: C, C++ i Java. Im dalej, tym dla mnie ciężej było. Gdybym nie miał na głowie pisanie pracy i oddania do końca miesiąca, nie pracowałbym od 7 do godziny 16 i wracał do domu o ok 17 i mieć nóż na gardle z Dyrektorem, to bym się zagłębił w komentarze i sam język z przyjemnością. No i pobawił się w samym Blenderze, co mnie kręci i mam już kilka projektów w głowie ^^ Dobra kończę te tłumaczenie się ;) Jadę do promotora i mam nadzieję że zaakceptuje pracę i będę miał jedną sprawę załatwioną. Mimo iż szacunek do mnie jako użytkownika zmalał, to i tak życzcie mi powodzenia ^_^
n-pigeon Napisano 14 Maj 2011 Napisano 14 Maj 2011 szczuro: mając ten tytuł, nic nie potrafiąc i tak nie będą pracować w tym zawodzie, bo będzie ich to przerażać :) Coody Powodzenia i masz to http://www.thenewboston.com/ przyda ci się
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się