diff options
Diffstat (limited to 'src/Data')
-rw-r--r-- | src/Data/Gate.cpp | 1 | ||||
-rw-r--r-- | src/Data/Gate.h | 10 | ||||
-rw-r--r-- | src/Data/Level.cpp | 12 | ||||
-rw-r--r-- | src/Data/Level.h | 4 | ||||
-rw-r--r-- | src/Data/Makefile.am | 5 | ||||
-rw-r--r-- | src/Data/Makefile.in | 450 | ||||
-rw-r--r-- | src/Data/Room.cpp | 30 | ||||
-rw-r--r-- | src/Data/Room.h | 10 | ||||
-rw-r--r-- | src/Data/Triangle.cpp | 48 | ||||
-rw-r--r-- | src/Data/Triangle.h | 23 | ||||
-rw-r--r-- | src/Data/Vector.h | 47 | ||||
-rw-r--r-- | src/Data/Vertex.h | 49 |
12 files changed, 33 insertions, 656 deletions
diff --git a/src/Data/Gate.cpp b/src/Data/Gate.cpp index 62794c2..5b497e7 100644 --- a/src/Data/Gate.cpp +++ b/src/Data/Gate.cpp @@ -33,7 +33,6 @@ Gate::Gate(xmlpp::Element *node) : gateNode(node) { triangles.push_back(new Triangle(tNode)); } - id = node->get_attribute_value("id"); room1 = node->get_attribute_value("room1"); room2 = node->get_attribute_value("room2"); } diff --git a/src/Data/Gate.h b/src/Data/Gate.h index a6fb958..e8eee94 100644 --- a/src/Data/Gate.h +++ b/src/Data/Gate.h @@ -33,7 +33,6 @@ class Gate { std::list<Triangle*> triangles; xmlpp::Element *gateNode; - Glib::ustring id; Glib::ustring room1, room2; // Prevent shallow copy @@ -51,15 +50,6 @@ class Gate { Triangle* addTriangle(); void removeTriangle(Triangle *t); - const Glib::ustring& getId() const { - return id; - } - - void setId(const Glib::ustring &id0) { - id = id0; - gateNode->set_attribute("id", id0); - } - const Glib::ustring& getRoom1() const { return room1; } diff --git a/src/Data/Level.cpp b/src/Data/Level.cpp index 7193f37..6dcba95 100644 --- a/src/Data/Level.cpp +++ b/src/Data/Level.cpp @@ -89,19 +89,9 @@ void Level::removeRoom(Room *room) { delete room; } -Gate* Level::getGate(const Glib::ustring &id) const { - for(std::list<Gate*>::const_iterator gate = gates.begin(); gate != gates.end(); ++gate) { - if((*gate)->getId() == id) - return *gate; - } - - return 0; -} - -Gate* Level::addGate(const Glib::ustring &id) { +Gate* Level::addGate() { xmlpp::Element *node = gatesNode->add_child("gate"); - node->set_attribute("id", id); node->set_attribute("room1", ""); node->set_attribute("room2", ""); diff --git a/src/Data/Level.h b/src/Data/Level.h index 34b5b1a..52b4d55 100644 --- a/src/Data/Level.h +++ b/src/Data/Level.h @@ -60,9 +60,7 @@ class Level { const std::list<Gate*>& getGates() const {return gates;} - Gate* getGate(const Glib::ustring &id) const; - - Gate* addGate(const Glib::ustring &id); + Gate* addGate(); void removeGate(Gate *gate); const std::list<Texture*>& getTextures() const {return textures;} diff --git a/src/Data/Makefile.am b/src/Data/Makefile.am deleted file mode 100644 index 820da1f..0000000 --- a/src/Data/Makefile.am +++ /dev/null @@ -1,5 +0,0 @@ -noinst_LTLIBRARIES = libdata.la - -libdata_la_SOURCES = Gate.cpp Info.cpp Level.cpp Room.cpp Texture.cpp Triangle.cpp - -noinst_HEADERS = Gate.h Info.h Level.h Room.h TexCoords.h Texture.h Triangle.h Vector.h Vertex.h diff --git a/src/Data/Makefile.in b/src/Data/Makefile.in deleted file mode 100644 index d31abca..0000000 --- a/src/Data/Makefile.in +++ /dev/null @@ -1,450 +0,0 @@ -# Makefile.in generated by automake 1.10.1 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - - -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -subdir = src/Data -DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/src/config.h -CONFIG_CLEAN_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libdata_la_LIBADD = -am_libdata_la_OBJECTS = Gate.lo Info.lo Level.lo Room.lo Texture.lo \ - Triangle.lo -libdata_la_OBJECTS = $(am_libdata_la_OBJECTS) -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -SOURCES = $(libdata_la_SOURCES) -DIST_SOURCES = $(libdata_la_SOURCES) -HEADERS = $(noinst_HEADERS) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DSYMUTIL = @DSYMUTIL@ -ECHO = @ECHO@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -F77 = @F77@ -FFLAGS = @FFLAGS@ -GREP = @GREP@ -GTKGLEXT_CFLAGS = @GTKGLEXT_CFLAGS@ -GTKGLEXT_LIBS = @GTKGLEXT_LIBS@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -NMEDIT = @NMEDIT@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -RANLIB = @RANLIB@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_F77 = @ac_ct_F77@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -glademm_CFLAGS = @glademm_CFLAGS@ -glademm_LIBS = @glademm_LIBS@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -libxml_CFLAGS = @libxml_CFLAGS@ -libxml_LIBS = @libxml_LIBS@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -noinst_LTLIBRARIES = libdata.la -libdata_la_SOURCES = Gate.cpp Info.cpp Level.cpp Room.cpp Texture.cpp Triangle.cpp -noinst_HEADERS = Gate.h Info.h Level.h Room.h TexCoords.h Texture.h Triangle.h Vector.h Vertex.h -all: all-am - -.SUFFIXES: -.SUFFIXES: .cpp .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Data/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/Data/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libdata.la: $(libdata_la_OBJECTS) $(libdata_la_DEPENDENCIES) - $(CXXLINK) $(libdata_la_OBJECTS) $(libdata_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Gate.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Info.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Level.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Room.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Texture.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Triangle.Plo@am__quote@ - -.cpp.o: -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< - -.cpp.obj: -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.cpp.lo: -@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(LTLIBRARIES) $(HEADERS) -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-exec-am: - -install-html: install-html-am - -install-info: install-info-am - -install-man: - -install-pdf: install-pdf-am - -install-ps: install-ps-am - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES ctags distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags uninstall uninstall-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/src/Data/Room.cpp b/src/Data/Room.cpp index b1d7473..d7355fc 100644 --- a/src/Data/Room.cpp +++ b/src/Data/Room.cpp @@ -41,18 +41,7 @@ void Room::populateTriangle(xmlpp::Element *tNode) { } Room::Room(xmlpp::Element *node) : roomNode(node) { - floorNode = dynamic_cast<xmlpp::Element*>(node->get_children("floor").front()); - - xmlpp::Node::NodeList triangleList = floorNode->get_children("triangle"); - - for(xmlpp::Node::NodeList::iterator t = triangleList.begin(); t != triangleList.end(); ++t) { - xmlpp::Element *tNode = dynamic_cast<xmlpp::Element*>(*t); - - if(tNode) - floor.push_back(new Triangle(tNode)); - } - - triangleList = node->get_children("triangle"); + xmlpp::Node::NodeList triangleList = node->get_children("triangle"); for(xmlpp::Node::NodeList::iterator t = triangleList.begin(); t != triangleList.end(); ++t) { xmlpp::Element *tNode = dynamic_cast<xmlpp::Element*>(*t); @@ -86,22 +75,5 @@ void Room::removeTriangle(Triangle *t) { delete t; } -Triangle* Room::addFloorTriangle() { - xmlpp::Element *tNode = floorNode->add_child("triangle"); - - populateTriangle(tNode); - - Triangle *t = new Triangle(tNode); - floor.push_back(t); - - return t; -} - -void Room::removeFloorTriangle(Triangle *t) { - floorNode->remove_child(t->getNode()); - floor.remove(t); - delete t; -} - } } diff --git a/src/Data/Room.h b/src/Data/Room.h index b23923b..75ee219 100644 --- a/src/Data/Room.h +++ b/src/Data/Room.h @@ -33,9 +33,6 @@ class Room { std::list<Triangle*> triangles; xmlpp::Element *roomNode; - std::list<Triangle*> floor; - xmlpp::Element *floorNode; - Glib::ustring id; void populateTriangle(xmlpp::Element *tNode); @@ -55,13 +52,6 @@ class Room { Triangle* addTriangle(); void removeTriangle(Triangle *t); - const std::list<Triangle*>& getFloorTriangles() const { - return floor; - } - - Triangle* addFloorTriangle(); - void removeFloorTriangle(Triangle *t); - const Glib::ustring& getId() const { return id; } diff --git a/src/Data/Triangle.cpp b/src/Data/Triangle.cpp index b3f76a7..51a4947 100644 --- a/src/Data/Triangle.cpp +++ b/src/Data/Triangle.cpp @@ -18,28 +18,18 @@ */ #include "Triangle.h" -#include <Util/Xml.h> #include <cstdlib> +#include <cstring> namespace ZoomEdit { namespace Data { -Vertex Triangle::loadVertex(xmlpp::Element *node) const { - Vertex v; +vmml::vec3f Triangle::loadVector(xmlpp::Element *node) const { + vmml::vec3f v; - v.setX(std::atof(node->get_attribute_value("x").c_str())); - v.setY(std::atof(node->get_attribute_value("y").c_str())); - v.setZ(std::atof(node->get_attribute_value("z").c_str())); - - return v; -} - -Vector Triangle::loadVector(xmlpp::Element *node) const { - Vector v; - - v.setX(std::atof(node->get_attribute_value("x").c_str())); - v.setY(std::atof(node->get_attribute_value("y").c_str())); - v.setZ(std::atof(node->get_attribute_value("z").c_str())); + v.x() = std::atof(node->get_attribute_value("x").c_str()); + v.y() = std::atof(node->get_attribute_value("y").c_str()); + v.z() = std::atof(node->get_attribute_value("z").c_str()); return v; } @@ -99,7 +89,7 @@ Triangle::Triangle(xmlpp::Element *node) : triangleNode(node) { if(e->get_name() == "vertex") { vertexNodes[++i] = e; - vertices[i] = loadVertex(e); + vertices[i] = loadVector(e); normalNodes[i] = 0; texCoordsNodes[i] = 0; @@ -110,23 +100,23 @@ Triangle::Triangle(xmlpp::Element *node) : triangleNode(node) { texture = node->get_attribute_value("texture"); } -void Triangle::setVertex(unsigned int i, const Vertex &v) { +void Triangle::setVertex(unsigned int i, const vmml::vec3f &v) { vertices[i] = v; - vertexNodes[i]->set_attribute("x", Glib::ustring::format(v.getX())); - vertexNodes[i]->set_attribute("y", Glib::ustring::format(v.getY())); - vertexNodes[i]->set_attribute("z", Glib::ustring::format(v.getZ())); + vertexNodes[i]->set_attribute("x", Glib::ustring::format(v.x())); + vertexNodes[i]->set_attribute("y", Glib::ustring::format(v.y())); + vertexNodes[i]->set_attribute("z", Glib::ustring::format(v.z())); } -void Triangle::setNormal(unsigned int i, const Vector &n) { +void Triangle::setNormal(unsigned int i, const vmml::vec3f &n) { normals[i] = n; if(!normalNodes[i]) - normalNodes[i] = Util::Xml::addSibling(static_cast<xmlpp::Node*>(vertexNodes[i]), "normal"); - - normalNodes[i]->set_attribute("x", Glib::ustring::format(n.getX())); - normalNodes[i]->set_attribute("y", Glib::ustring::format(n.getY())); - normalNodes[i]->set_attribute("z", Glib::ustring::format(n.getZ())); + normalNodes[i] = triangleNode->add_child(vertexNodes[i], "normal"); + + normalNodes[i]->set_attribute("x", Glib::ustring::format(n.x())); + normalNodes[i]->set_attribute("y", Glib::ustring::format(n.y())); + normalNodes[i]->set_attribute("z", Glib::ustring::format(n.z())); } void Triangle::setTexCoords(unsigned int i, const TexCoords &t) { @@ -134,9 +124,9 @@ void Triangle::setTexCoords(unsigned int i, const TexCoords &t) { if(!texCoordsNodes[i]) { if(normalNodes[i]) - texCoordsNodes[i] = Util::Xml::addSibling(static_cast<xmlpp::Node*>(normalNodes[i]), "texcoords"); + texCoordsNodes[i] = triangleNode->add_child(normalNodes[i], "texcoords"); else - texCoordsNodes[i] = Util::Xml::addSibling(static_cast<xmlpp::Node*>(vertexNodes[i]), "texcoords"); + texCoordsNodes[i] = triangleNode->add_child(vertexNodes[i], "texcoords"); } texCoordsNodes[i]->set_attribute("s", Glib::ustring::format(t.getS())); diff --git a/src/Data/Triangle.h b/src/Data/Triangle.h index 979fbfa..1bbb164 100644 --- a/src/Data/Triangle.h +++ b/src/Data/Triangle.h @@ -20,10 +20,10 @@ #ifndef ZOOMEDIT_DATA_TRIANGLE_H_ #define ZOOMEDIT_DATA_TRIANGLE_H_ -#include "Vertex.h" -#include "Vector.h" #include "TexCoords.h" + #include <libxml++/nodes/element.h> +#include <vmmlib/vector.hpp> namespace ZoomEdit { namespace Data { @@ -35,33 +35,32 @@ class Triangle { xmlpp::Element *normalNodes[3]; xmlpp::Element *texCoordsNodes[3]; - Vertex vertices[3]; - Vector normals[3]; + vmml::vec3f vertices[3]; + vmml::vec3f normals[3]; TexCoords texCoords[3]; bool visible; Glib::ustring texture; - Vertex loadVertex(xmlpp::Element *node) const; - Vector loadVector(xmlpp::Element *node) const; + vmml::vec3f loadVector(xmlpp::Element *node) const; TexCoords loadTexCoords(xmlpp::Element *node) const; public: Triangle(xmlpp::Element *node); - const Vertex& getVertex(unsigned int i) const {return vertices[i%3];} - void setVertex(unsigned int i, const Vertex &v); + const vmml::vec3f& getVertex(unsigned int i) const {return vertices[i%3];} + void setVertex(unsigned int i, const vmml::vec3f &v); - void setVertices(const Vertex *v) { + void setVertices(const vmml::vec3f *v) { for(int i = 0; i < 3; ++i) setVertex(i, v[i]); } - const Vector& getNormal(unsigned int i) const {return normals[i%3];} - void setNormal(unsigned int i, const Vector &n); + const vmml::vec3f& getNormal(unsigned int i) const {return normals[i%3];} + void setNormal(unsigned int i, const vmml::vec3f &n); - void setNormals(const Vector *n) { + void setNormals(const vmml::vec3f *n) { for(int i = 0; i < 3; ++i) setNormal(i, n[i]); } diff --git a/src/Data/Vector.h b/src/Data/Vector.h deleted file mode 100644 index ded0834..0000000 --- a/src/Data/Vector.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Vector.h - * - * Copyright (C) 2008 Matthias Schiffer <matthias@gamezock.de> - * - * This program is free software: you can redistribute it and/or modify it - * 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 program 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 program. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef ZOOMEDIT_DATA_VECTOR_H_ -#define ZOOMEDIT_DATA_VECTOR_H_ - -namespace ZoomEdit { -namespace Data { - -class Vector { - private: - float x, y, z; - - public: - Vector() : x(0), y(0), z(0) {} - Vector(float x0, float y0, float z0) : x(x0), y(y0), z(z0) {} - - float getX() const {return x;} - void setX(float x0) {x = x0;} - - float getY() const {return y;} - void setY(float y0) {y = y0;} - - float getZ() const {return z;} - void setZ(float z0) {z = z0;} -}; - -} -} - -#endif /*ZOOMEDIT_DATA_VECTOR_H_*/ diff --git a/src/Data/Vertex.h b/src/Data/Vertex.h deleted file mode 100644 index 423e0d2..0000000 --- a/src/Data/Vertex.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Vertex.h - * - * Copyright (C) 2008 Matthias Schiffer <matthias@gamezock.de> - * - * This program is free software: you can redistribute it and/or modify it - * 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 program 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 program. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef ZOOMEDIT_DATA_VERTEX_H_ -#define ZOOMEDIT_DATA_VERTEX_H_ - -//#include "Vector.h" - -namespace ZoomEdit { -namespace Data { - -class Vertex { - private: - float x, y, z; - - public: - Vertex() : x(0), y(0), z(0) {} - Vertex(float x0, float y0, float z0) : x(x0), y(y0), z(z0) {} - - float getX() const {return x;} - void setX(float x0) {x = x0;} - - float getY() const {return y;} - void setY(float y0) {y = y0;} - - float getZ() const {return z;} - void setZ(float z0) {z = z0;} -}; - -} -} - -#endif /*ZOOMEDIT_DATA_VERTEX_H_*/ |