From ad72a19c36cb9347eb9db35c56938604491e5a94 Mon Sep 17 00:00:00 2001 From: Brendan Date: Mon, 2 Mar 2015 14:45:13 -0700 Subject: [PATCH] adds *.class to .gitignore --- .gitignore | 1 + CopterController/TCPexample/Client.class | Bin 1048 -> 0 bytes CopterController/TCPexample/Server.class | Bin 1764 -> 0 bytes GroundStation/v1/GroundStation.class | Bin 11350 -> 0 bytes GroundStation/v1/SmartScroller$1.class | Bin 629 -> 0 bytes GroundStation/v1/SmartScroller.class | Bin 2918 -> 0 bytes GroundStation/v2/ConnectionPanel.java | 43 +++++++++++++++++++---- GroundStation/v2/Display3d.java | 23 ++++++++---- GroundStation/v2/DisplayController.java | 26 ++++++++++++++ GroundStation/v2/EStopWindow.java | 11 ++++-- GroundStation/v2/GroundStation.java | 4 ++- 11 files changed, 92 insertions(+), 16 deletions(-) create mode 100644 .gitignore delete mode 100644 CopterController/TCPexample/Client.class delete mode 100644 CopterController/TCPexample/Server.class delete mode 100644 GroundStation/v1/GroundStation.class delete mode 100644 GroundStation/v1/SmartScroller$1.class delete mode 100644 GroundStation/v1/SmartScroller.class create mode 100644 GroundStation/v2/DisplayController.java diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5241a72 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.class \ No newline at end of file diff --git a/CopterController/TCPexample/Client.class b/CopterController/TCPexample/Client.class deleted file mode 100644 index 21fd188fcc2a3633a9d83518eba0587a0594ae07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1048 zcmZuw+fvg|6kVsZO&Y?jrGO|JyiqQ;QW3d{N-a_?>QL0FK856ffi~&1Dax<-13cqH zJ7Y&bz(@ba2gQ97kdD%s?z3-aU)EXq{`<=}0BPhE#Boi+bs0Al1aMQrn1qB-#}$Mz zp&*3G2&QmLMp8ivw}od~h_o>8$e0nvT?w-??n#)FFwYQPvTVy;X6Q(azh($#9FsHj z4P7RAM`f~y;Q>w3k@r#Zd( z7N{A6QgG^3gRfemP-muOaobIbDk=srNZq`OHg{76$Jpa8gE~E*PEOCxC1>amS&P)# z%d(u*N_~5qSGl>tb(2>aE}RB(cBSspOk6MfF%?U=FRm{O@j${u6_2pO5Z&MgxAwWI z)w~rJGy*fD;xV!+R`Eo|8geS0BFhjMQ&c+O5(2B8hfE4)t4{uK3+r7ixw*43e6XSj=A<`Bg zpoUIr{1XsWVrL;AA@A+lrYjuOTwW$NICYva{N4JtEfY$NCPT=7k+2`^am!Mr4W7gkppwI!Vgtq9HWW6Qrfl xO|-4) diff --git a/CopterController/TCPexample/Server.class b/CopterController/TCPexample/Server.class deleted file mode 100644 index f3ef10a77868cb9d643e60119def26dbbf3d5a61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1764 zcmZuxSx*~R6#g!Fe1~CJV#4Aq&5)$Q5SE6nK$@ly(zs|*QIz@#U#fR#|;hBxT&ET?`hC*iz6*H?`vqo2P$Ty za#o5tj(H887*lauK0j2kAfFi(iyA({9TiI|?yAVj&}AuBWE_cUDHN=5e5~RVj!!v0 zV~Ah19Xq(j(3tAK!w{QtEy2(>V>@E5R9F?>qPdzUO{`$r4ntRJWoFadHb?TNvp$ju zJlk2Hkby0kz|3vUn#Itc<8x}3!wkDibF5NU1})>3yqvgcOT^}k@V13FEa7zYV}K*4 z!vdKS84(18Y?O+IA9`sVYdY4k!O$7zcSJA}0c70VmIx$*tz#2gRAgi@Hca2hxsD@p zfv|ctGK8VFJ2F{XTN9qJ7KCXDk0Dtzq@7|Zptgirh-}n@jywty-;u&)=%{($ruKs+ z&klsAqlkObPH5dbrX7~Q=6Xg!_`bO=hKGkW9X_bg61K@F#HeF&vSjDOS`yU=!xK4S zZwqVO(6NL242%$VWw3T5otc`So130mBx-ehfiD?aE!(elOVm-fCo;mZB#VAHrg5W> zp`nj3zQTr%uQ5>TB&=fkeohnv+od7*EN!@M(eE|VfnnK}(-#;!uD2x_j7QWmv>(<# zzq&~b6WB4UL8}xxhT{qcbtE)eprfi?KM)1lN4G?nozb?@$U?58$xPG=KdNR>igF+n zl{$V&W2v;<)wr3Hy%I{QKXN=QkFZMewR>JZ|HWm)1Yw4>H;cyE^(RQV<^EyKwgVBK;NSllcYX&)Gd zjw9!Pd{x(x0@c8+jVUhfmCU^V0>RPzC;F)j9u6Q+JEY|Dt}kGqk3NI)*Fb-|4AYrh*?08Oij(cnhiFJNmJ!>Bl1;=b;4_!YP-msO zDO79OeKcnW%g`%msi1XkA8qorJyyYq@tAZ>kmFDp9X}(!ckmaTPL3<2-$!S*g04h& z89hmbL?TI|j8o*ER1&AlIP())CBRwI>|wAj=B4K`=MG~istjZA;KyXFj9$ufp6a+j z^WwpcfBu9>3xO9^oP$6Y6icgeOG%QyRnXG=M*d(-F#W1^j>j6^>Up mu5gTUyvp$!z?=TT7{}{>BXvMI897MtMiZ6#CIvR&t^WYTgsR>E diff --git a/GroundStation/v1/GroundStation.class b/GroundStation/v1/GroundStation.class deleted file mode 100644 index eee607233f8af5d8f2a56380ae1f74525e31a69d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11350 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 H6fgdNA}`@? diff --git a/GroundStation/v1/SmartScroller$1.class b/GroundStation/v1/SmartScroller$1.class deleted file mode 100644 index dfed3b3ae33dc47cb3e93b86eb36e41a2a061651..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 629 zcma)4TT2^36#iy&S+kuqtJd^}HLVLxQ)!~FmO=>@3aLUPzE3uT*|3>~y~N*DFtqfc zKfoU)ev=j@zSxC5=gc|h`_5(N>iYK|00#(asNks;&pcG|+`|@LxOnN}m5UvL%3Q^P z7HAEoYOcEKBJb+CHhK5+cv@unjOLL&9|~0SNt6XWfyQ7sQ)xa7(fdq z7$;d|&cEq=l8jxnBwpiP6U|#?N@~bgA?Z+z1bSB_0cM>ae z-aQ#jb(pjAo$GsH%-=riD_jCib-TPX6&JccA%z|b?6&`BAD#+BopIH@9$LJ)Dm!!G z_`aP1pyoilU5CF!ozcg%-tt_cZgk!+AUb;sIGvv;{h*7}Qd$}yq4cr-57Z{edS&O5 lm`ganP`*QW%MvMzWu)F#`j8gyr diff --git a/GroundStation/v1/SmartScroller.class b/GroundStation/v1/SmartScroller.class deleted file mode 100644 index 95926ce3d90fb3272947d5a1b081764c442e0c35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2918 zcmai0X>$}s7=C&)yR+F$0tP0KkU&6=WCJX>5>N>tKroj{hyor=cAGG;nOSFNLjV;N z0Z&9N%L293@}Sfzt1KmWR4IP&i{%GD>7TL0r)M{tO^A@Kyxsj?-Tk~r&+q^K_%nbF zcsqur*r&+DF)Tw@IcMF9^eED+qc4g_V$jha#eiZB#;_klYWAp_Jr+Y94yf6|7!Kia z9Z$qijVE)U9Ix;$*7Jz`! z={VABPg~in%nHQz_V#xk?ClwB>k<&10+sEqll3jfAF|RpS;kAzC_2>9KiJvc)}_`$ zAUrVG);}mv*3q*|VD6YLPh?!r?{l-ZZ@Z2_c{b^}>GV#^6Ij@F%o?-C6WJ5CGm_Xh zFe%w4Fvm(A%Vqr{i$^%fBV;@|X1lp;a0F^iuDh*qdo(vH5ZP`!w*R0&eba2t`z%Lp zYaSBN+TE0-gD%^VJ-N|g=?z-LX>uC=->y>`F1~|2P^cX6t>p1;D-$>jAog?+(3<>} zMr8rP_M?_FB2xnQ=3OSN6MjODQJiQCF0V8@)H*nERr07z9xno-!)JVTdzId5cjz3qL~VIDeV0@$5GuZxN131 zk*{sSIeF9|I{9QO9JCO`r8A(oEzSk?LIY;Z`7)?2I>woH%*+_)#csUNlcVmKoGnyQ zUOI5X_iZWPLzXlWIuB?PwY2EoWS6^!gu z!N_LCF~U7IV+-khTrG!2OCTC=(X<-~eZ#rH{iLygzmc!1{Fer@8j7r#V#OP- zqoV#Qs^TpZFs`HW8Yr|^`xVt!P*Hi?1(~H1E0Wu2r<^t}#cg=x# z%MC2}9t&rJ@4(;&A@%$ep!|bSmec%i-nRB8>bh4?U{TMSA5br_MdR4OG0br>#|WVb zn?zFAu0bo?qH`TFBgJ*p)URNp8NG_NlvG^B{J5!IDQGiF*HA--89r=AKAz%Il}gK$ zh4vBZRulUrX2cAqwrHzO0^F!LbMjg%^M04)l{7PQn2g8_O_LcBj++r?!&GdBv5?n1 zizuE)C0{5L=g`1MXaz1XdoQAcZ%HrTks(|n`j`3mz00@fDp&8}9lTHa0Y2jIYkY!l z@hN`6XZQ`D<9B?4Kk+60!dF4OPQ$pxGSP#0?bOk(W0z22+adlzmDnL}F&)ZhNGTUO zI&SfVvxq_ziEz(d6hbSS=SHy`d-9RRV#YZ{hY^(wVk#3 0 ) { - Scanner motorScan = new Scanner( next ); - + if( next.indexOf( "H" ) == 0 ) { + System.out.print( "\nH " ); + } + else if( next.indexOf( "E" ) == 0 ) { + motorsEnabled = true; + System.out.print( "E " ); + } + else if( next.indexOf( "M" ) == 0 ) { + contentIn.motorTesting = true; + //int motorNum = Integer.parseInt( next.substring( 1 ) ); + //int motorVal = Integer.parseInt( next.substring( 3, next.length() ) ); + //contentIn.motorValues[ motorNum ] = motorVal; + System.out.print( "M " ); + } + else if( next.indexOf( "C" ) == 0 ) { + contentIn.controls = true; + //int controlNum = Integer.parseInt( next.substring( 1 ) ); + //int controlVal = Integer.parseInt( next.substring( 3, next.length() ) ); + //contentIn.controlValues[ controlNum ] = controlVal; + System.out.print( "C " ); + } + else if( next.indexOf( "O" ) == 0 ) { + contentIn.orientation = true; + System.out.print( "O " ); } } + contentIn.setMotorsEnabled( motorsEnabled ); + contentIn.fireActionPerformed( new ActionEvent(contentIn, ActionEvent.ACTION_PERFORMED, "" ) ); } - contentIn.orientation = true; - contentIn.fireActionPerformed( new ActionEvent(contentIn, ActionEvent.ACTION_PERFORMED, "" ) ); } catch( IOException ex ) {} } diff --git a/GroundStation/v2/Display3d.java b/GroundStation/v2/Display3d.java index e9f6dc9..8104dd3 100644 --- a/GroundStation/v2/Display3d.java +++ b/GroundStation/v2/Display3d.java @@ -10,7 +10,7 @@ class Display3d extends JPanel implements ActionListener, ChangeListener { private JSlider slider; private MessageContent source = new MessageContent(); - private Font normalFont = new Font( "Normal", Font.PLAIN, 15 ); + private Font normalFont = new Font( "Normal", Font.BOLD, 15 ); /** * no-args constructor @@ -60,12 +60,23 @@ class Display3d extends JPanel implements ActionListener, ChangeListener { g.setColor( Color.GREEN ); //g.drawLine( centerX, centerY, X, Y ); - g.setColor( Color.BLACK ); + g.setColor( Color.LIGHT_GRAY ); g.setFont( normalFont ); - g.drawString( "w = " + source.orientValues[ 0 ], 10, 35 ); - g.drawString( "x = " + source.orientValues[ 1 ], 10, 60 ); - g.drawString( "y = " + source.orientValues[ 2 ], 10, 85 ); - g.drawString( "z = " + source.orientValues[ 3 ], 10, 110 ); + + double w = source.orientValues[ 0 ]; + double x = source.orientValues[ 1 ]; + double y = source.orientValues[ 2 ]; + double z = source.orientValues[ 3 ]; + + g.drawString( "w = " + w, 11, 35 ); + g.drawString( "x = " + x, 15, 50 ); + g.drawString( "y = " + y, 15, 65 ); + g.drawString( "z = " + z, 15, 80 ); + + double[] gravity = { 2 * ( x*z - w*y ), 2 * ( w*x + y*z ), w*w - x*x - y*y + z*z }; + + g.drawString( "Pitch: " + Math.toRadians( Math.atan( x / Math.sqrt( y*y + z*z ) ) ), 15, 100 ); + g.drawString( "Roll: " + Math.toRadians( Math.atan( y / Math.sqrt( x*x + z*z ) ) ), 15, 115 ); } else { g.setColor( Color.RED ); diff --git a/GroundStation/v2/DisplayController.java b/GroundStation/v2/DisplayController.java new file mode 100644 index 0000000..a22d088 --- /dev/null +++ b/GroundStation/v2/DisplayController.java @@ -0,0 +1,26 @@ +import javax.swing.*; +import java.awt.event.*; + +class DisplayController.java extends JPanel implements ActionListener { + + private MessageContent source = new MessageContent(); + + public DisplayController() { + setBackground( Color.DARK_GRAY ); + setPerferredSize( new Dimension( 0, 100 ) ); + } + + public void paintComponent( Graphics g ) { + super.paintComponent( g ); + + g.setColor( Color.LIGHT_GRAY ); + + } + + /** + * + */ + public void actionPerformed( ActionEvent evt ) { + redraw(); + } +} \ No newline at end of file diff --git a/GroundStation/v2/EStopWindow.java b/GroundStation/v2/EStopWindow.java index 3dbf817..5b78cfe 100644 --- a/GroundStation/v2/EStopWindow.java +++ b/GroundStation/v2/EStopWindow.java @@ -20,7 +20,7 @@ class EStopWindow extends JFrame implements ActionListener { /** * */ - public EStopWindow() { + public EStopWindow( boolean visible) { super("Emergency Stop"); setDefaultCloseOperation( JFrame.DO_NOTHING_ON_CLOSE ); setAlwaysOnTop( true ); @@ -33,7 +33,14 @@ class EStopWindow extends JFrame implements ActionListener { setEnabled( true ); pack(); - setVisible( true ); + setVisible( visible ); + } + + /** + * + */ + public EStopWindow() { + this( true ); } /** diff --git a/GroundStation/v2/GroundStation.java b/GroundStation/v2/GroundStation.java index 7d60718..5447c60 100644 --- a/GroundStation/v2/GroundStation.java +++ b/GroundStation/v2/GroundStation.java @@ -11,7 +11,7 @@ class GroundStation implements ActionListener { /** main window to hold everything */ private JFrame mainWindow; /** window to hold emergency stop button */ - private EStopWindow eStopWindow; + private EStopWindow eStopWindow = new EStopWindow( false ); /** connection options section of window */ private ConnectionPanel connectPanel; @@ -52,6 +52,8 @@ class GroundStation implements ActionListener { mainWindow.pack(); mainWindow.setVisible( true ); + + sendContent.orientation = true; } public void disableMotors() {