Skip to content
Snippets Groups Projects
Commit e9b2e486 authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Vorbereitung Praktikum 11./13.1.2016

parent 6052b85f
Branches
No related tags found
No related merge requests found
File added
% ainf-2015ws-p4.pdf - Labor Notes on Fundamentals in Computer Architecture
% Copyright (C) 2014, 2015, 2016 Peter Gerwinski
%
% This document is free software: you can redistribute it and/or
% modify it either under the terms of the Creative Commons
% Attribution-ShareAlike 3.0 License, or under the terms of the
% GNU General Public License as published by the Free Software
% Foundation, either version 3 of the License, or (at your option)
% any later version.
%
% This document is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this document. If not, see <http://www.gnu.org/licenses/>.
%
% You should have received a copy of the Creative Commons
% Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>.
\documentclass[a4paper]{article}
\usepackage{pgscript}
\usepackage{multicol}
\usepackage{sfmath}
\sloppy
\pagestyle{empty}
\newcommand{\sep}{~$\cdot$~}
\newcommand{\mylicense}{CC-by-sa (Version 3.0) oder GNU GPL (Version 3 oder höher)}
\begin{document}
\makebox(0,0)[tl]{\includegraphics[scale=0.57]{logo-hochschule-bochum-cvh-text.pdf}}\hfill
\makebox(0,0)[tr]{\includegraphics[scale=0.5]{logo-hochschule-bochum.pdf}}
\par\bigskip\bigskip
\begin{center}
\Large\textbf{Praktikumsversuch 4: 3d-Grafik-Editor}
\par\medskip
\normalsize Angewandte Informatik\sep
Wintersemester 2015/16\sep
Prof.~Dr.~Peter Gerwinski
\end{center}
Aufgabe: Schreiben Sie ein C-Programm,
das Objekte (z.\,B.\ Würfel, Kugel, Teekanne) in eine 3d-Grafik einfügen
und nachträglich verändern kann (z.\,B.\ verschieben, Farbe ändern).
\begin{multicols}{2}
\begin{itemize}
\item
In der GLUT-Bibliothek (OpenGL) kann man mittels \lstinline{glutKeyboardFunc()}
eine Callback-Funktion zur Steuerung von Tastatur und Maus installieren
(siehe z.\,B.\ die Vorlesungsunterlagen vom 29.\,10.\,2015).
\item
Schreiben Sie zunächst eine Datenstruktur
(Empfehlung: Stack von \lstinline{struct}s),
in der Sie die Eigenschaften (z.\,B.\ Typ, Ort, Farbe)
von 3d-Objekten abspeichern können.
\item
Schreiben Sie nun ein Programm,
das die bereits in der Datenstruktur befindlichen Objekte grafisch darstellt.
(Zu Testzwecken können Sie die Datenstruktur entsprechend initialisieren.)
\item
Erweitern Sie das Programm so, daß auf Tastendruck und/oder Mausklick
ein neues Objekt in die Datenstruktur eingefügt
(und ab dann auch dargestellt) wird.
\item
Erweitern Sie nun das Programm um die Möglichkeit,
per Tastendruck und/oder Mausklick ein bereits vorhandenes Objekt
auszuwählen.
\item
Ergänzen Sie Möglichkeiten, das ausgewählte Objekt zu bearbeiten.
\end{itemize}
\bigskip
\qquad\qquad\emph{Viel Erfolg!}
\end{multicols}
\vfill
\begingroup
\small
\setlength{\leftskip}{3cm}
Stand: 4.\ Januar 2016
% Soweit nicht anders angegeben:\\
Copyright \copyright\ 2014, 2015\quad Peter Gerwinski\\
Lizenz: \mylicense
Sie können diese Praktikumsunterlagen
einschließlich Quelltext und sonstiger Lehrmaterialien
unter \url{https://gitlab.cvh-server.de/pgerwinski/ainf.git} herunterladen.
\endgroup
\end{document}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment