From 9187c82e569ccda9e51c45b7cf0c844c517a55e7 Mon Sep 17 00:00:00 2001 From: Chris Teubert Date: Tue, 25 Aug 2015 10:50:15 -0700 Subject: [PATCH] Fixes for MATLAB and C Examples, Updated Mac Binary --- C/monitorExample/main.c | 5 +- C/playbackExample/src/playback.c | 2 +- MATLAB/MonitorExample/MonitorExample.m | 13 ++-- MATLAB/PlaybackExample/MyRecording.txt | 100 +++++++++++++++++++++++++ MATLAB/PlaybackExample/Playback.m | 12 ++- MATLAB/PlaybackExample/Record.m | 4 +- xpcPlugin/XPlaneConnect/mac.xpl | Bin 166676 -> 166516 bytes 7 files changed, 119 insertions(+), 17 deletions(-) create mode 100644 MATLAB/PlaybackExample/MyRecording.txt diff --git a/C/monitorExample/main.c b/C/monitorExample/main.c index fc06679..b9f7c43 100644 --- a/C/monitorExample/main.c +++ b/C/monitorExample/main.c @@ -23,6 +23,7 @@ // IMMEDIATE, UNILATERAL TERMINATION OF THIS AGREEMENT. #include "../src/xplaneConnect.h" +#include #include "stdio.h" #ifdef WIN32 @@ -51,7 +52,6 @@ int waitForInput() int fdstdin = 0; fd_set fds; struct timeval tv; -tv.tv_usec = 100 * 1000; int waitForInput() { @@ -61,14 +61,13 @@ int waitForInput() select(1, &fds, NULL, NULL, &tv); return FD_ISSET(fdstdin, &fds); } - #endif int main(void) { - XPCSocket client = openUDP("127.0.0.1"); const int aircraftNum = 0; + tv.tv_usec = 100 * 1000; while (1) { float posi[7]; diff --git a/C/playbackExample/src/playback.c b/C/playbackExample/src/playback.c index e2de4e0..75ad523 100644 --- a/C/playbackExample/src/playback.c +++ b/C/playbackExample/src/playback.c @@ -42,7 +42,7 @@ void playbackSleep(int ms) #ifdef WIN32 Sleep(ms); #else - uSleep(ms * 1000); + usleep(ms * 1000); #endif } diff --git a/MATLAB/MonitorExample/MonitorExample.m b/MATLAB/MonitorExample/MonitorExample.m index fa42115..aa9ac1f 100644 --- a/MATLAB/MonitorExample/MonitorExample.m +++ b/MATLAB/MonitorExample/MonitorExample.m @@ -3,18 +3,17 @@ % Before running this script, ensure that the XPC plugin is installed and % X-Plane is running. %% Import XPC -clear all; +clear all addpath('../') import XPlaneConnect.* Socket = openUDP(); -while 1 - posi = getPOSI(1, Socket); - ctrl = getCTRL(1, Socket); - +for i=1:100 + posi = getPOSI(0, Socket); + ctrl = getCTRL(0, Socket); + fprintf('Loc: (%4f, %4f, %4f) Aileron:%2f Elevator:%2f Rudder:%2f\n', ... - posi(1), posi(2), posi(3), ctrl(2), ctrl(1), ctrl(3)); - + posi(1), posi(2), posi(3), ctrl(2), ctrl(1), ctrl(3)); pause(0.1); end closeUDP(Socket); \ No newline at end of file diff --git a/MATLAB/PlaybackExample/MyRecording.txt b/MATLAB/PlaybackExample/MyRecording.txt new file mode 100644 index 0000000..60c546a --- /dev/null +++ b/MATLAB/PlaybackExample/MyRecording.txt @@ -0,0 +1,100 @@ +37.184181, -120.793640, 3904.040771, 1.856917, 0.001644, 116.058609, 0.000000 +37.184143, -120.793541, 3903.825928, 2.172139, -0.034512, 115.875587, 0.000000 +37.184090, -120.793404, 3903.511719, 2.425995, -0.111958, 115.577911, 0.000000 +37.184040, -120.793282, 3903.230225, 2.497653, -0.205506, 115.289268, 0.000000 +37.183994, -120.793167, 3902.961914, 2.478850, -0.315117, 115.006279, 0.000000 +37.183949, -120.793053, 3902.683838, 2.412536, -0.447890, 114.716370, 0.000000 +37.183910, -120.792953, 3902.452881, 2.344441, -0.570747, 114.485756, 0.000000 +37.183857, -120.792824, 3902.137939, 2.253826, -0.752984, 114.194984, 0.000000 +37.183807, -120.792702, 3901.830566, 2.178489, -0.942979, 113.943779, 0.000000 +37.183765, -120.792595, 3901.561279, 2.125190, -1.116157, 113.754135, 0.000000 +37.183735, -120.792511, 3901.342773, 2.089507, -1.260052, 113.621834, 0.000000 +37.183693, -120.792404, 3901.058350, 2.051378, -1.449701, 113.479713, 0.000000 +37.183628, -120.792244, 3900.620361, 2.004393, -1.742637, 113.320374, 0.000000 +37.183571, -120.792107, 3900.232178, 1.969860, -1.999084, 113.234406, 0.000000 +37.183529, -120.791992, 3899.922852, 1.945357, -2.199157, 113.199463, 0.000000 +37.183487, -120.791885, 3899.607666, 1.922479, -2.397843, 113.190887, 0.000000 +37.183441, -120.791771, 3899.279297, 1.738008, -2.604320, 113.214371, 0.000000 +37.183395, -120.791649, 3898.942383, 1.172052, -2.819112, 113.280800, 0.000000 +37.183342, -120.791512, 3898.525879, 0.437769, -3.059577, 113.392952, 0.000000 +37.183292, -120.791389, 3898.116943, -0.110597, -3.260861, 113.510010, 0.000000 +37.183247, -120.791275, 3897.675293, -0.458939, -3.399007, 113.635101, 0.000000 +37.183220, -120.791206, 3897.409668, -0.495934, -3.425584, 113.706985, 0.000000 +37.183182, -120.791107, 3896.976318, -0.338542, -3.312644, 113.832870, 0.000000 +37.183128, -120.790962, 3896.313965, 0.088305, -2.812056, 114.069130, 0.000000 +37.183083, -120.790848, 3895.734863, 0.355302, -2.143086, 114.327766, 0.000000 +37.183033, -120.790718, 3895.112061, 0.345563, -1.171917, 114.668144, 0.000000 +37.182987, -120.790604, 3894.519043, 0.034761, -0.025642, 115.037415, 0.000000 +37.182941, -120.790489, 3893.926270, -0.549108, 1.265883, 115.421654, 0.000000 +37.182888, -120.790344, 3893.151611, -1.627703, 3.039703, 115.896240, 0.000000 +37.182831, -120.790199, 3892.313477, -2.879907, 4.868656, 116.325722, 0.000000 +37.182785, -120.790077, 3891.557129, -3.883288, 6.350969, 116.633751, 0.000000 +37.182743, -120.789970, 3890.766602, -4.752331, 7.729563, 116.888329, 0.000000 +37.182705, -120.789871, 3889.997314, -5.439554, 8.871016, 117.077042, 0.000000 +37.182659, -120.789749, 3888.965820, -6.164141, 10.014505, 117.239494, 0.000000 +37.182610, -120.789627, 3887.832031, -6.734039, 10.811956, 117.319382, 0.000000 +37.182560, -120.789505, 3886.558594, -7.134449, 11.245357, 117.313339, 0.000000 +37.182514, -120.789383, 3885.197510, -7.320403, 11.326477, 117.228592, 0.000000 +37.182465, -120.789261, 3883.700439, -7.264509, 11.086659, 117.071564, 0.000000 +37.182415, -120.789131, 3882.124023, -7.020517, 10.579235, 116.843575, 0.000000 +37.182365, -120.789009, 3880.477295, -6.698184, 9.864036, 116.538239, 0.000000 +37.182316, -120.788887, 3878.771973, -6.407937, 8.986709, 116.154274, 0.000000 +37.182266, -120.788765, 3877.028076, -6.217397, 7.992366, 115.705994, 0.000000 +37.182217, -120.788643, 3875.249023, -6.173934, 6.988136, 115.220467, 0.000000 +37.182167, -120.788521, 3873.432617, -6.285208, 6.050294, 114.729034, 0.000000 +37.182117, -120.788399, 3871.583496, -6.453388, 5.213163, 114.269440, 0.000000 +37.182068, -120.788269, 3869.689209, -6.484870, 4.480176, 113.873062, 0.000000 +37.182014, -120.788147, 3867.766357, -6.310386, 3.856612, 113.555290, 0.000000 +37.181965, -120.788025, 3865.820801, -6.021461, 3.327790, 113.311180, 0.000000 +37.181915, -120.787903, 3863.870361, -5.728759, 2.874094, 113.135651, 0.000000 +37.181866, -120.787781, 3861.910156, -5.480271, 2.475115, 113.025513, 0.000000 +37.181816, -120.787651, 3859.973145, -5.302026, 2.122235, 112.979225, 0.000000 +37.181767, -120.787529, 3858.042969, -5.182843, 1.808723, 112.993736, 0.000000 +37.181717, -120.787407, 3856.119629, -5.038956, 1.552066, 113.070557, 0.000000 +37.181667, -120.787285, 3854.215088, -4.828547, 1.368155, 113.206085, 0.000000 +37.181614, -120.787148, 3852.185059, -4.515563, 1.254129, 113.410904, 0.000000 +37.181557, -120.787010, 3850.030762, -4.132499, 1.210060, 113.681358, 0.000000 +37.181507, -120.786888, 3848.263916, -3.831450, 1.225745, 113.935280, 0.000000 +37.181458, -120.786766, 3846.475342, -3.528734, 1.284648, 114.214294, 0.000000 +37.181408, -120.786644, 3844.712158, -3.243377, 1.382594, 114.502975, 0.000000 +37.181358, -120.786522, 3842.987549, -2.982575, 1.515415, 114.790489, 0.000000 +37.181309, -120.786392, 3841.302246, -2.688687, 1.679037, 115.070442, 0.000000 +37.181259, -120.786270, 3839.659424, -2.305070, 1.869125, 115.338135, 0.000000 +37.181210, -120.786148, 3838.070068, -1.827937, 2.080883, 115.588036, 0.000000 +37.181156, -120.786018, 3836.515137, -1.326015, 2.315055, 115.817902, 0.000000 +37.181107, -120.785889, 3835.020508, -0.858468, 2.566000, 116.019691, 0.000000 +37.181053, -120.785767, 3833.605713, -0.446646, 2.827466, 116.188957, 0.000000 +37.181004, -120.785637, 3832.263672, -0.082390, 3.097450, 116.326546, 0.000000 +37.180950, -120.785515, 3830.996094, 0.248427, 3.372406, 116.433670, 0.000000 +37.180901, -120.785385, 3829.802734, 0.561189, 3.648955, 116.513596, 0.000000 +37.180847, -120.785263, 3828.686279, 0.901348, 3.909596, 116.570610, 0.000000 +37.180798, -120.785133, 3827.642090, 1.422296, 4.101938, 116.610832, 0.000000 +37.180744, -120.785011, 3826.675537, 2.124010, 4.216800, 116.636208, 0.000000 +37.180691, -120.784889, 3825.800049, 2.895841, 4.268193, 116.644135, 0.000000 +37.180641, -120.784767, 3825.024658, 3.647615, 4.264566, 116.632553, 0.000000 +37.180588, -120.784637, 3824.355469, 4.389325, 4.198403, 116.604164, 0.000000 +37.180538, -120.784523, 3823.797119, 5.116096, 4.063403, 116.559959, 0.000000 +37.180489, -120.784401, 3823.351562, 5.802851, 3.858843, 116.500069, 0.000000 +37.180435, -120.784279, 3823.021240, 6.434232, 3.583184, 116.425621, 0.000000 +37.180386, -120.784164, 3822.803223, 7.040646, 3.237821, 116.340439, 0.000000 +37.180336, -120.784042, 3822.697021, 7.629384, 2.839028, 116.249237, 0.000000 +37.180286, -120.783928, 3822.700195, 8.181519, 2.404881, 116.155312, 0.000000 +37.180244, -120.783821, 3822.798828, 8.596326, 1.981372, 116.066658, 0.000000 +37.180183, -120.783684, 3823.074219, 9.020256, 1.372200, 115.947289, 0.000000 +37.180126, -120.783554, 3823.453369, 9.331639, 0.798377, 115.847244, 0.000000 +37.180073, -120.783424, 3823.932129, 9.642418, 0.224538, 115.759720, 0.000000 +37.180019, -120.783302, 3824.521729, 9.962214, -0.365530, 115.680557, 0.000000 +37.179970, -120.783188, 3825.146240, 10.216949, -0.901261, 115.617035, 0.000000 +37.179928, -120.783081, 3825.777100, 10.420901, -1.378152, 115.566948, 0.000000 +37.179871, -120.782951, 3826.665283, 10.683296, -1.973540, 115.510689, 0.000000 +37.179817, -120.782829, 3827.599854, 10.932059, -2.526971, 115.463028, 0.000000 +37.179764, -120.782700, 3828.676758, 11.182608, -3.091355, 115.418022, 0.000000 +37.179710, -120.782570, 3829.791748, 11.405788, -3.608584, 115.379250, 0.000000 +37.179657, -120.782448, 3830.954102, 11.541166, -4.084742, 115.349564, 0.000000 +37.179604, -120.782326, 3832.230469, 11.431418, -4.526593, 115.343117, 0.000000 +37.179554, -120.782204, 3833.525391, 11.053594, -4.891589, 115.367775, 0.000000 +37.179501, -120.782082, 3834.855957, 10.596283, -5.199400, 115.407677, 0.000000 +37.179451, -120.781960, 3836.201660, 10.188977, -5.458726, 115.448441, 0.000000 +37.179401, -120.781837, 3837.573486, 9.879080, -5.681745, 115.481895, 0.000000 +37.179348, -120.781715, 3838.972656, 9.667299, -5.869191, 115.505310, 0.000000 +37.179298, -120.781593, 3840.342529, 9.507944, -5.992330, 115.524872, 0.000000 diff --git a/MATLAB/PlaybackExample/Playback.m b/MATLAB/PlaybackExample/Playback.m index e9f553b..f5ea2a5 100644 --- a/MATLAB/PlaybackExample/Playback.m +++ b/MATLAB/PlaybackExample/Playback.m @@ -1,4 +1,4 @@ -%% X-Plane Connect MATLAB Recording Example Script +%% X-Plane Connect MATLAB Playback Example Script % This script demonstrates how to playback recorded data from X-Plane. % (See Record.m) % Before running this script, ensure that the XPC plugin is installed and @@ -11,22 +11,26 @@ import XPlaneConnect.* % Create variables and open connection to X-Plane path = 'MyRecording.txt'; % File containing stored data interval = 0.1; % Time between snapshots in seconds +duration = 10; Socket = openUDP(); % Open connection to X-Plane fd = fopen(path, 'r'); % Open file disp('X-Plane Connect Playback Example Script'); fprintf('Playing back ''%s'' in %fs increments.\n', path, interval); -%% Start Recording +%% Start Playback count = floor(duration / interval); +pauseSim(1); for i = 1:count - posi = fscanf(fd, '%f, %f, %f, %f, %f, %f, %f\n'); + line = fgetl(fd); + posi = sscanf(line, '%f, %f, %f, %f, %f, %f, %f\n'); sendPOSI(posi); pause(interval); end %% Close connection and file +pauseSim(0); closeUDP(Socket); fclose(fd); -disp('Recording complete.'); \ No newline at end of file +disp('Playback complete.'); \ No newline at end of file diff --git a/MATLAB/PlaybackExample/Record.m b/MATLAB/PlaybackExample/Record.m index 7e95b00..8f0d0b0 100644 --- a/MATLAB/PlaybackExample/Record.m +++ b/MATLAB/PlaybackExample/Record.m @@ -16,12 +16,12 @@ Socket = openUDP(); % Open connection to X-Plane fd = fopen(path, 'w'); % Open file disp('X-Plane Connect Recording Example Script'); -fprintf('Recording to ''%s'' for $f seconds in %fs increments.\n', path, duration, interval); +fprintf('Recording to ''%s'' for %f seconds in %fs increments.\n', path, duration, interval); %% Start Recording count = floor(duration / interval); for i = 1:count - posi = getPOSI(); + posi = getPOSI(0, Socket); fprintf(fd, '%f, %f, %f, %f, %f, %f, %f\n', ... posi(1), posi(2), posi(3), posi(4), posi(5), posi(6), posi(7)); pause(interval); diff --git a/xpcPlugin/XPlaneConnect/mac.xpl b/xpcPlugin/XPlaneConnect/mac.xpl index e2d2f6db994afdba3ba31efea63ed75b5d441e0b..aa4d819130bf3c5040bef2efcead521504b51b47 100755 GIT binary patch delta 36539 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 delta 36120 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

I*)ld%O=RN`U(WU+UWnaCyc#RhI8@!n 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 E2aM8G#Q*>R