#moving and reference images> points transform according to: fixed to moving (i.e. resample to reference!)
parameter.Alignment.FixedImage  = os.path.join(basedirectory, 'Synthetic/test_iDISCO_resample.tif');
parameter.Alignment.MovingImage = os.path.join(basedirectory, 'Synthetic/test_iDISCO_reference.tif');
parameter.Alignment.FixedImageMask = None;  
  
#elastix parameter files for alignment
parameter.Alignment.AffineParameterFile  = os.path.join(parameter.Alignment.AlignmentDirectory, 'ElastixParameterAffine.txt');
#parameter.Alignment.BSplineParameterFile = os.path.join(parameter.Alignment.AlignmentDirectory, 'ElastixParameterBSpline.txt');
parameter.Alignment.BSplineParameterFile = None;


runInitializeElastix(parameter)
iDISCO.Alignment.Elastix.ElastixSettings.printInfo();

resultDirectory = runAlignment(parameter);

print "Aligned images: result directory: %s" % resultDirectory



##############################################################################
# Test Transform Points
############################################################################## 

import iDISCO.Visualization.Plot as Plot;

import iDISCO.Alignment.Elastix as elx;

import iDISCO.Analysis.Voxelization as vox
import iDISCO.IO.IO as io
parameter.Alignment.MovingImage = os.path.join(pp,
                                               'half_template_25_right.tif')
parameter.Alignment.FixedImage = os.path.join(basedirectory,
                                              'autofluo_resample.tif')
parameter.Alignment.FixedImageMask = None

#elastix parameter files for alignment
parameter.Alignment.AffineParameterFile = os.path.join(pp, 'Par0000affine.txt')
parameter.Alignment.BSplineParameterFile = os.path.join(
    pp, 'Par0000bspline.txt')
#parameter.Alignment.BSplineParameterFile = None;

runInitializeElastix(parameter)
iDISCO.Alignment.Elastix.ElastixSettings.printInfo()

resultDirectory = runAlignment(parameter)

print("Aligned images: result directory: %s" % resultDirectory)

##############################################################################
# Test Alignment CFos with Fluorescence to correct for aquisition movements
##############################################################################

import os
import numpy

from iDISCO.Parameter import *
from iDISCO.Run import runAlignment, runInitializeElastix
from iDISCO.Run import runResampling

import iDISCO.Alignment.Elastix as elx