掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
コードで記述した 3D Object を回転させたい。 (ID:46027)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
コードで記述した 3D Object を回転させたいのですが、 // <--- ★エラ− の行で、未定義の識別子 というエラーメッセージがでます。 エラーを無くして Cubeをさせるにはどうすればいいですか。 詳しいかたがいらっしゃいましたら、ご指導の程よろしくお願い致します。 作成手順 ファイル 新規作成 FireMonkey デスクトップアプリケーション HD FireMonkey アプリケーション で作成。 フォームに ツールパレットから、Viewport3D,Light,LightMaterialSource,Button を配置します。 フォームをダブルクリックして、uses 節に FMX.Objects3D を手入力で追加します。 やりたい事 ツールパレットから Dummy,Cube を Form に配置せず、Dummy と Cube をコードで記述して、 フォームに配置したボタンをクリックすると、(Cubeの親はDummy)キューブ(Dummy) が、Y軸を中心にして回転する。 親子関係 Form1 | +-Button1 | +-Viewport3D1 | +-Lighte1 | +-LighteMaterialSource1 | +-Dummy //<-- ツールパレットから配置ではなく、コードで記述する。 | +-Cube //<-- ツールパレットから配置ではなく、コードで記述する。 Unit1.pas の内容 Unit1.pas //ここから unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls, FMX.Viewport3D,FMX.Objects3D,FMX.MaterialSources,FMX.Controls3D; type TForm1 = class(TForm) Viewport3D1: TViewport3D; Button1: TButton; LightMaterialSource1: TLightMaterialSource; Light1: TLight; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { private 宣言 } public { public 宣言 } end; var Form1: TForm1; implementation {$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); begin Img_Dummy := Img_Dummy.RotationAngle.Y + 90; // <--- ★エラ− end; procedure TForm1.FormCreate(Sender: TObject); var Img_Dummy : TDummy; Img_Cube : TCube; Img_Proxy : TProxyObject; begin Img_Dummy := TDummy.Create(nil); Img_Dummy.Parent := Viewport3D1; Img_Dummy.SetSize(3, 3, 3); Img_Dummy.Position.Point := Point3D(0, 0, 0); Img_Dummy.RotationAngle.Y := 50; Img_Cube := TCube.Create(nil); Img_Cube.Parent := Img_Dummy; TCube(Img_Cube).MaterialSource := LightMaterialSource1; Img_Cube.SetSize(3, 3, 3); Img_Cube.Position.Point := Point3D(0, 0, 0); end; end. Unit1.pas //ここまで 使用環境 Delphi XE5 Pro Update2 Win7 Pro 64bit SP1
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.