eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingOpen GL - obrotyOpen GL - obroty
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.supermedia.pl!news.nask.pl!news.na
    sk.org.pl!news.uni-stuttgart.de!news.belwue.de!newsfeed01.sul.t-online.de!t-onl
    ine.de!proxad.net!feeder1-2.proxad.net!74.125.46.80.MISMATCH!postnews.google.co
    m!d7g2000vbv.googlegroups.com!not-for-mail
    From: Andrzej <a...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Open GL - obroty
    Date: Mon, 13 Dec 2010 15:18:13 -0800 (PST)
    Organization: http://groups.google.com
    Lines: 57
    Message-ID: <b...@d...googlegroups.com>
    NNTP-Posting-Host: 94.171.233.144
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    X-Trace: posting.google.com 1292282293 28735 127.0.0.1 (13 Dec 2010 23:18:13 GMT)
    X-Complaints-To: g...@g...com
    NNTP-Posting-Date: Mon, 13 Dec 2010 23:18:13 +0000 (UTC)
    Complaints-To: g...@g...com
    Injection-Info: d7g2000vbv.googlegroups.com; posting-host=94.171.233.144;
    posting-account=P3GYJgkAAABTVJuCDDKBtbEn_8gDp3To
    User-Agent: G2/1.0
    X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10
    (KHTML, like Gecko) Chrome/8.0.552.215 Safari/534.10,gzip(gfe)
    Xref: news-archive.icm.edu.pl pl.comp.programming:187614
    [ ukryj nagłówki ]

    Witam,

    Czy ktoś może mi podpowiedzieć w jaki sposób wykonać obrót modelu za
    pomocą biblioteki OpenGL w taki sposób, aby model obracał się dookoła
    wszystkich osi przechodzących przez środek tego modelu, przy czym osie
    te muszą być równoległe do osi układu współrzędnych kamery. Bez
    ustawionej perspektywy udało mi się wykonać prawidłowo tylko 2 obroty
    dookoła osi x oraz y, natomiast w przypadku osi z model wiruje
    względem osi z własnego układu współrzędnych. Z ustawioną perspektywą
    model obraca się tylko dookoła osi własnego własnego układu
    współrzędnych, a nie jest to efekt, który chce uzyskać. Przykładowy
    kod w LWOGL w javie:

    protected void GL_beginDraw() {
    Rectangle bounds = this.glcanvas.getParent().getClientArea();
    this.glcanvas.setBounds( bounds );
    this.glcanvas.setCurrent();
    try {
    GLContext.useContext(this.glcanvas);
    } catch(LWJGLException e) {
    e.printStackTrace();
    }
    GL11.glViewport(2, 2, bounds.width-2, bounds.height-2);

    this.setupGLParameters();
    //this.setupGLPerspective(bounds);

    // display world reference frame - camera eye
    GL11.glMatrixMode( GL11.GL_MODELVIEW );
    GL11.glLoadIdentity();

    GL11.glScalef(this.zoomFactor, this.zoomFactor,
    this.zoomFactor );

    // translate the following model with respect of the camera
    GL11.glTranslatef(this.translate[0], this.translate[1],
    this.translate[2]);

    GL11.glRotatef(this.rotate[0], 1f, 0f, 0f);
    GL11.glRotatef(this.rotate[1], 0f, 1f, 0f);
    GL11.glRotatef(this.rotate[2], 0f, 0f, 1f);

    // zoom the model
    GL11.glScalef(this.zoomFactor, this.zoomFactor,
    this.zoomFactor );

    }

    Pozdrawiam

    AP

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: