2017-02-24 4 views
0

私はまだmatlabには新しく、訓練として、私は指定された位置を中心とする座標系をプロットする簡単な関数を書こうとしています。カスタム関数内で定義されたグラフィックオブジェクトの可視性を設定する方法は?

これまで機能の関連部分はこのようになります(座標系の中心の計算部分をスキップ):

function [] = fancyAxis(x,y,z,lengthX,lengthY,lengthZ,vis) 

if vis == 1 
    vis = 'on'; 
else 
    vis = 'off'; 
end 


%X-Achse 
h_xAchse = plot3([x x],[Y1 Y2], [z z],'linestyle','--','visible',vis); 
%Y-Achse 
h_yAchse=plot3([x x],[y y], [z Z2],'linestyle','--','visible',vis); 

関数は罰金とかに動作します。しかし、今私は私の機能の可視性をコントロールしたい。だから私は別のスクリプトでそれを呼び出すとき、私は再び視界をオフにすることができるようにしたい。だから私は「VIS」の定数を変更すると、それを試してみましたが、それはまったく動作しません:( だから誰かがplsは私にそれを正しく行う方法についてのヒントを与えることができる?

感謝を:)

答えて

0

を読み取るため軸を返し、それらを使って遊びます。

function [h_xAchse,h_yAchse] = fancyAxis(x,y,z,lengthX,lengthY,lengthZ,vis) 

に関数呼び出しを変更して、あなたが行うことができますあなたのメインのコードに:

[~,h_yAchse] = fancyAxis(x,y,z,lengthX,lengthY,lengthZ,vis) 
set(h_yAchse,'visible','off') 

あなたは、プロパティを変更できるようにハンドルを必要としています。

+0

すべてのハンドルを1つに結合した後、完全に私が望む方法で動作します:)高速返信と助けをありがとう。 – SirBando

+0

@SirBando Im glad!その答えを有効として受け入れることを検討する;) –

関連する問題