From e0cb6bd23b21f126bde42f74f4b1a798c3e15b0f Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Thu, 7 Jan 2010 07:03:58 +0100 Subject: Major cleanup Much better now! --- src/Math/Makefile.am | 5 - src/Math/Makefile.in | 446 ------------------------------------------------ src/Math/Triangle2D.cpp | 16 +- src/Math/Triangle2D.h | 16 +- src/Math/Vector2D.cpp | 83 --------- src/Math/Vector2D.h | 66 ------- src/Math/Vertex2D.cpp | 61 ------- src/Math/Vertex2D.h | 57 ------- 8 files changed, 16 insertions(+), 734 deletions(-) delete mode 100644 src/Math/Makefile.am delete mode 100644 src/Math/Makefile.in delete mode 100644 src/Math/Vector2D.cpp delete mode 100644 src/Math/Vector2D.h delete mode 100644 src/Math/Vertex2D.cpp delete mode 100644 src/Math/Vertex2D.h (limited to 'src/Math') diff --git a/src/Math/Makefile.am b/src/Math/Makefile.am deleted file mode 100644 index 5045b5a..0000000 --- a/src/Math/Makefile.am +++ /dev/null @@ -1,5 +0,0 @@ -noinst_LTLIBRARIES = libmath.la - -libmath_la_SOURCES = Triangle2D.cpp Vector2D.cpp Vertex2D.cpp - -noinst_HEADERS = Triangle2D.h Vector2D.h Vertex2D.h diff --git a/src/Math/Makefile.in b/src/Math/Makefile.in deleted file mode 100644 index 2457e24..0000000 --- a/src/Math/Makefile.in +++ /dev/null @@ -1,446 +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/Math -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) -libmath_la_LIBADD = -am_libmath_la_OBJECTS = Triangle2D.lo Vector2D.lo Vertex2D.lo -libmath_la_OBJECTS = $(am_libmath_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 = $(libmath_la_SOURCES) -DIST_SOURCES = $(libmath_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 = libmath.la -libmath_la_SOURCES = Triangle2D.cpp Vector2D.cpp Vertex2D.cpp -noinst_HEADERS = Triangle2D.h Vector2D.h Vertex2D.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/Math/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/Math/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 -libmath.la: $(libmath_la_OBJECTS) $(libmath_la_DEPENDENCIES) - $(CXXLINK) $(libmath_la_OBJECTS) $(libmath_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Triangle2D.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Vector2D.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Vertex2D.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/Math/Triangle2D.cpp b/src/Math/Triangle2D.cpp index 035ecb3..699bad8 100644 --- a/src/Math/Triangle2D.cpp +++ b/src/Math/Triangle2D.cpp @@ -24,19 +24,19 @@ namespace ZoomEdit { namespace Math { float Triangle2D::area() const { - return std::fabs((vertices[0].getY() + vertices[1].getY())*(vertices[0].getX()-vertices[1].getX()) - + (vertices[1].getY() + vertices[2].getY())*(vertices[1].getX()-vertices[2].getX()) - + (vertices[2].getY() + vertices[0].getY())*(vertices[2].getX()-vertices[0].getX()))/2; + return std::fabs((vertices[0].y() + vertices[1].y())*(vertices[0].x()-vertices[1].x()) + + (vertices[1].y() + vertices[2].y())*(vertices[1].x()-vertices[2].x()) + + (vertices[2].y() + vertices[0].y())*(vertices[2].x()-vertices[0].x()))/2; } -bool Triangle2D::contains(const Vertex2D &v) const { +bool Triangle2D::contains(const vmml::vec2f &v) const { for(int i = 0; i < 3; ++i) { - Vector2D v1 = vertices[(i+2)%3] - vertices[(i+1)%3]; - Vector2D v2 = vertices[i] - vertices[(i+1)%3]; + vmml::vec2f v1 = vertices[(i+2)%3] - vertices[(i+1)%3]; + vmml::vec2f v2 = vertices[i] - vertices[(i+1)%3]; - Vector2D vp = v - vertices[(i+1)%3]; + vmml::vec2f vp = v - vertices[(i+1)%3]; - if((v1.getX()*vp.getY()-vp.getX()*v1.getY())*(v1.getX()*v2.getY()-v2.getX()*v1.getY()) < 0) + if((v1.x()*vp.y()-vp.x()*v1.y())*(v1.x()*v2.y()-v2.x()*v1.y()) < 0) return false; } diff --git a/src/Math/Triangle2D.h b/src/Math/Triangle2D.h index f8f02dd..f6bb6e2 100644 --- a/src/Math/Triangle2D.h +++ b/src/Math/Triangle2D.h @@ -20,39 +20,39 @@ #ifndef ZOOMEDIT_MATH_TRIANGLE2D_H_ #define ZOOMEDIT_MATH_TRIANGLE2D_H_ -#include "Vertex2D.h" +#include namespace ZoomEdit { namespace Math { class Triangle2D { private: - Vertex2D vertices[3]; + vmml::vec2f vertices[3]; public: Triangle2D() {} - Triangle2D(const Vertex2D &v1, const Vertex2D &v2, const Vertex2D &v3) { + Triangle2D(const vmml::vec2f &v1, const vmml::vec2f &v2, const vmml::vec2f &v3) { vertices[0] = v1; vertices[1] = v2; vertices[2] = v3; } - Triangle2D(const Vertex2D *v) { + Triangle2D(const vmml::vec2f *v) { setVertices(v); } - const Vertex2D& getVertex(unsigned int i) const {return vertices[i];} - void setVertex(unsigned int i, const Vertex2D &v) {vertices[i] = v;} + const vmml::vec2f& getVertex(unsigned int i) const {return vertices[i];} + void setVertex(unsigned int i, const vmml::vec2f &v) {vertices[i] = v;} - void setVertices(const Vertex2D *v) { + void setVertices(const vmml::vec2f *v) { for(int i = 0; i < 3; ++i) setVertex(i, v[i]); } float area() const; - bool contains(const Vertex2D &v) const; + bool contains(const vmml::vec2f &v) const; }; } diff --git a/src/Math/Vector2D.cpp b/src/Math/Vector2D.cpp deleted file mode 100644 index 78f536b..0000000 --- a/src/Math/Vector2D.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Vector2D.cpp - * - * Copyright (C) 2008 Matthias Schiffer - * - * 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 . - */ - -#include "Vector2D.h" -#include - -namespace ZoomEdit { -namespace Math { - -float Vector2D::lengthSq() const { - return x*x + y*y; -} - -float Vector2D::length() const { - return std::sqrt(lengthSq()); -} - -Vector2D Vector2D::operator+(const Vector2D &v) const { - return Vector2D(x + v.x, y + v.y); -} - -Vector2D Vector2D::operator-(const Vector2D &v) const { - return Vector2D(x - v.x, y - v.y); -} - -float Vector2D::operator*(const Vector2D &v) const { - return (x*v.x + y*v.y); -} - -Vector2D Vector2D::operator*(float f) const { - return Vector2D(x*f, y*f); -} - -Vector2D Vector2D::operator/(float f) const { - return Vector2D(x/f, y/f); -} - -Vector2D& Vector2D::operator+=(const Vector2D &v) { - x += v.x; - y += v.y; - - return *this; -} - -Vector2D& Vector2D::operator-=(const Vector2D &v) { - x -= v.x; - y -= v.y; - - return *this; -} - -Vector2D& Vector2D::operator*=(float f) { - x *= f; - y *= f; - - return *this; -} - -Vector2D& Vector2D::operator/=(float f) { - x /= f; - y /= f; - - return *this; -} - -} -} diff --git a/src/Math/Vector2D.h b/src/Math/Vector2D.h deleted file mode 100644 index e95e502..0000000 --- a/src/Math/Vector2D.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Vector2D.h - * - * Copyright (C) 2008 Matthias Schiffer - * - * 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 . - */ - -#ifndef ZOOMEDIT_MATH_VECTOR2D_H_ -#define ZOOMEDIT_MATH_VECTOR2D_H_ - -namespace ZoomEdit { -namespace Math { - -class Vector2D { - private: - float x, y; - - public: - Vector2D() : x(0), y(0) {} - Vector2D(float x0, float y0) : x(x0), y(y0) {} - - float getX() const {return x;} - void setX(float x0) {x = x0;} - - float getY() const {return y;} - void setY(float y0) {y = y0;} - - float lengthSq() const; - float length() const; - - void normalize() { - if(lengthSq()) - *this /= length(); - } - - Vector2D operator+(const Vector2D &v) const; - Vector2D operator-(const Vector2D &v) const; - float operator*(const Vector2D &v) const; - - Vector2D operator*(float f) const; - Vector2D operator/(float f) const; - - Vector2D& operator+=(const Vector2D &v); - Vector2D& operator-=(const Vector2D &v); - - Vector2D& operator*=(float f); - Vector2D& operator/=(float f); -}; - -} - -} - -#endif /*ZOOMEDIT_MATH_VECTOR2D_H_*/ diff --git a/src/Math/Vertex2D.cpp b/src/Math/Vertex2D.cpp deleted file mode 100644 index d64317a..0000000 --- a/src/Math/Vertex2D.cpp +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Vertex2D.cpp - * - * Copyright (C) 2008 Matthias Schiffer - * - * 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 . - */ - -#include "Vertex2D.h" -#include - -namespace ZoomEdit { -namespace Math { - -float Vertex2D::distanceSq(const Vertex2D &v) const { - return (x - v.x)*(x - v.x) + (y - v.y)*(y - v.y); -} - -float Vertex2D::distance(const Vertex2D &v) const { - return std::sqrt(distanceSq(v)); -} - -Vector2D Vertex2D::operator-(const Vertex2D &v) const { - return Vector2D(x - v.x, y - v.y); -} - -Vertex2D Vertex2D::operator+(const Vector2D &v) const { - return Vertex2D(x + v.getX(), y + v.getY()); -} - -Vertex2D Vertex2D::operator-(const Vector2D &v) const { - return Vertex2D(x - v.getX(), y - v.getY()); -} - -Vertex2D& Vertex2D::operator+=(const Vector2D &v) { - x += v.getX(); - y += v.getY(); - - return *this; -} - -Vertex2D& Vertex2D::operator-=(const Vector2D &v) { - x -= v.getX(); - y -= v.getY(); - - return *this; -} - -} -} diff --git a/src/Math/Vertex2D.h b/src/Math/Vertex2D.h deleted file mode 100644 index db6daba..0000000 --- a/src/Math/Vertex2D.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Vertex2D.h - * - * Copyright (C) 2008 Matthias Schiffer - * - * 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 . - */ - -#ifndef ZOOMEDIT_MATH_VERTEX2D_H_ -#define ZOOMEDIT_MATH_VERTEX2D_H_ - -#include "Vector2D.h" - -namespace ZoomEdit { -namespace Math { - -class Vertex2D { - private: - float x, y; - - public: - Vertex2D() : x(0), y(0) {} - Vertex2D(float x0, float y0) : x(x0), y(y0) {} - - float getX() const {return x;} - void setX(float x0) {x = x0;} - - float getY() const {return y;} - void setY(float y0) {y = y0;} - - float distanceSq(const Vertex2D &v) const; - float distance(const Vertex2D &v) const; - - Vector2D operator-(const Vertex2D &v) const; - - Vertex2D operator+(const Vector2D &v) const; - Vertex2D operator-(const Vector2D &v) const; - - Vertex2D& operator+=(const Vector2D &v); - Vertex2D& operator-=(const Vector2D &v); -}; - -} -} - -#endif /*ZOOMEDIT_MATH_VERTEX2D_H_*/ -- cgit v1.2.3