Added support for VIEW command in MATLAB client.
This commit is contained in:
Binary file not shown.
35
MATLAB/+XPlaneConnect/sendVIEW.m
Normal file
35
MATLAB/+XPlaneConnect/sendVIEW.m
Normal file
@@ -0,0 +1,35 @@
|
||||
function sendVIEW(view, socket)
|
||||
% sendVIEW Sets the camera
|
||||
%
|
||||
%Inputs
|
||||
% view: The view to use.
|
||||
% socket (optional): The client to use when sending the command.
|
||||
%
|
||||
%Use
|
||||
% 1. import XPlaneConnect.*;
|
||||
% 2. sendView(Forwards);
|
||||
%
|
||||
% Contributors
|
||||
% [JW] Jason Watkins <jason.w.watkins@nasa.gov>
|
||||
|
||||
import XPlaneConnect.*
|
||||
|
||||
%% Get client
|
||||
global clients;
|
||||
if ~exist('socket', 'var')
|
||||
assert(isequal(length(clients) < 2, 1), '[pauseSim] ERROR: Multiple clients open. You must specify which client to use.');
|
||||
if isempty(clients)
|
||||
socket = openUDP();
|
||||
else
|
||||
socket = clients(1);
|
||||
end
|
||||
end
|
||||
|
||||
%% Validate input
|
||||
|
||||
|
||||
%% Send command
|
||||
socket.sendVIEW(view)
|
||||
|
||||
end
|
||||
|
||||
26
TestScripts/MATLAB Tests/sendVIEWTest.m
Normal file
26
TestScripts/MATLAB Tests/sendVIEWTest.m
Normal file
@@ -0,0 +1,26 @@
|
||||
function sendVIEWTest()
|
||||
%% Setup
|
||||
addpath('../../MATLAB')
|
||||
import XPlaneConnect.*
|
||||
|
||||
if ~exist('gov.nasa.xpc.ViewType', 'class')
|
||||
[folder, ~, ~] = fileparts(which('XPlaneConnect.openUDP'));
|
||||
javaaddpath(fullfile(folder, 'XPlaneConnect.jar'));
|
||||
end
|
||||
|
||||
dref = 'sim/graphics/view/view_type';
|
||||
fwd = 1000;
|
||||
chase = 1017;
|
||||
|
||||
%% Excecute
|
||||
sendVIEW(gov.nasa.xpc.ViewType.Forwards);
|
||||
result = getDREFs(dref);
|
||||
assert(isequal(result, fwd))
|
||||
|
||||
sendVIEW(gov.nasa.xpc.ViewType.Chase);
|
||||
result = getDREFs(dref);
|
||||
assert(isequal(result, chase))
|
||||
|
||||
|
||||
end
|
||||
|
||||
@@ -18,6 +18,7 @@ theTests = {{@openCloseTest, 'Open/Close Test', 0},...
|
||||
{@CTRLTest,'CTRL Test', 0},...
|
||||
{@POSITest,'POSI Test', 0},...
|
||||
{@sendWYPTTest,'WYPT Test', 0},...
|
||||
{@sendVIEWTest,'VIEW Test', 0},...
|
||||
{@pauseTest,'Pause Test', 0},...
|
||||
{@setConnTest, 'setConn Test', 0}};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user