Skip to content

Commit 7bd0c04

Browse files
committed
[mcxstudio] correctly handle _ArrayOrder_=c, fix --lang for mcxcl/mmc
1 parent e4ed8f0 commit 7bd0c04

File tree

3 files changed

+12
-6
lines changed

3 files changed

+12
-6
lines changed

mcxstudio/mcxgui.pas

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -849,9 +849,6 @@ procedure TfmMCX.mcxdoDefaultExecute(Sender: TObject);
849849
ckSpecular.Checked:=false;
850850
edWorkLoad.Text:='100';
851851
edMoreParam.Text:='';
852-
if(Length(DefaultLang) > 0) then begin
853-
edMoreParam.Text:='--lang ' + DefaultLang;
854-
end;
855852

856853
edUnitInMM.Text:='1';
857854
ckSharedFS.Checked:=false;
@@ -1809,7 +1806,7 @@ procedure TfmMCX.FormCreate(Sender: TObject);
18091806
if(not DirectoryExists(workdir)) then
18101807
UseUserFolder:=true;
18111808

1812-
DefaultLang := 'en';
1809+
DefaultLang := '';
18131810
if(Application.HasOption('l','lang')) then
18141811
DefaultLang := Application.GetOptionValue('l', 'lang');
18151812
end;
@@ -3284,6 +3281,11 @@ function TfmMCX.CreateCmd(proc: TProcess=nil):AnsiString;
32843281
param.Add(debugflag);
32853282
end;
32863283

3284+
if (Length(DefaultLang) > 0) and (grProgram.ItemIndex = 0) then begin
3285+
param.Add('--lang');
3286+
param.Add(DefaultLang);
3287+
end;
3288+
32873289
if(Length(edMoreParam.Text)>0) then begin
32883290
shellscript:=TStringList.Create;
32893291
shellscript.StrictDelimiter:=true;
@@ -3293,6 +3295,7 @@ function TfmMCX.CreateCmd(proc: TProcess=nil):AnsiString;
32933295
shellscript.Free;
32943296
end;
32953297

3298+
32963299
AddLog('"-- Command: --"');
32973300
AddLog(cmd+' '+param.DelimitedText);
32983301

mcxstudio/mcxview.pas

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -609,7 +609,7 @@ procedure TfmViewer.glCanvasMouseWheel(Sender: TObject; Shift: TShiftState;
609609
XZGrid.Position.Y:=-M_Output_Texture_3D.Y_Size/2;
610610
XZGrid.Position.Z:=-M_Output_Texture_3D.Z_Size/2;
611611

612-
GLCamera.DepthOfView:=2.0*sqrt(Frame.Scale.X*Frame.Scale.X+Frame.Scale.Y*Frame.Scale.Y+Frame.Scale.Z*Frame.Scale.Z);
612+
GLCamera.DepthOfView:=2.5*sqrt(Frame.Scale.X*Frame.Scale.X+Frame.Scale.Y*Frame.Scale.Y+Frame.Scale.Z*Frame.Scale.Z);
613613
GLCamera.Position.X:=M_Output_Texture_3D.X_Size;
614614
GLCamera.Position.Y:=M_Output_Texture_3D.Y_Size*0.7;
615615
GLCamera.Position.Z:=M_Output_Texture_3D.Z_Size;

mcxstudio/texture_3d.pas

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,7 @@ procedure TTexture_3D.Load_From_JNIFTI_File (Const F_FileName : String);
253253
bufin, bufout: TMemoryStream;
254254
unzip: TDecompressionStream;
255255
idx: integer;
256+
columnmajor: boolean=false;
256257

257258
begin { TTexture_3D.Load_From_File }
258259
Screen.Cursor := crHourGlass;
@@ -291,9 +292,11 @@ procedure TTexture_3D.Load_From_JNIFTI_File (Const F_FileName : String);
291292
idx := JDataType.IndexOf(niidata.FindPath('_ArrayType_').AsString);
292293
if idx >= 0 then
293294
DataFormat := PtrUInt(JDataType.Objects[idx]);
295+
if (niidata.FindPath('_ArrayOrder_') <> nil) and (Pos(niidata.FindPath('_ArrayOrder_').AsString, 'c') = 1) then
296+
columnmajor := true;
294297

295298
bufout.Position:=0;
296-
Load_Texture_From_Stream(bufout, XDim, YDim, ZDim, TDim, DataFormat, false);
299+
Load_Texture_From_Stream(bufout, XDim, YDim, ZDim, TDim, DataFormat, columnmajor);
297300
finally
298301
bufout.Free;
299302
jnii.Free;

0 commit comments

Comments
 (0)