[chronojump] Encoder: Windows: using Cairo



commit da45dfa6b29bb7f022b952af37614487ea25a5dd
Author: Xavier de Blas <xaviblas gmail com>
Date:   Fri Feb 8 15:41:16 2013 +0100

    Encoder: Windows: using Cairo

 encoder/graph.R |   18 +++++++++++++-----
 src/util.cs     |    4 +++-
 2 files changed, 16 insertions(+), 6 deletions(-)
---
diff --git a/encoder/graph.R b/encoder/graph.R
index 74a7b8b..3050ca7 100644
--- a/encoder/graph.R
+++ b/encoder/graph.R
@@ -36,7 +36,7 @@ cols=c(colSpeed,colForce,colPower); lty=rep(1,3)
 #way A. passing options to a file
 getOptionsFromFile <- function(optionsFile) {
 	optionsCon <- file(optionsFile, 'r')
-	options=readLines(optionsCon,n=15)
+	options=readLines(optionsCon,n=16)
 	close(optionsCon)
 	return (options)
 }
@@ -56,6 +56,7 @@ options=getOptionsFromFile(optionsFile);
 print(options)
 
 OutputData2=options[4] #currently used to display status
+OperatingSystem=options[16]
 
 write("(1/5) Starting R", OutputData2)
 
@@ -756,9 +757,11 @@ quitIfNoData <- function(n, curves, outputData1) {
 	}
 }
 
-loadLibraries <- function() {
+loadLibraries <- function(os) {
 	library("EMD")
 	#library("sfsmisc")
+	if(os=="Windows")
+		library("Cairo")
 }
 
 doProcess <- function(options) {
@@ -778,6 +781,7 @@ doProcess <- function(options) {
 	Width=as.numeric(options[13])
 	Height=as.numeric(options[14])
 	Title=options[15]
+	OperatingSystem=options[16]
 
 	print(File)
 	print(OutputGraph)
@@ -785,7 +789,11 @@ doProcess <- function(options) {
 	print(OutputData2)
 	
 	if(Analysis != "exportCSV") {
-		png(OutputGraph, width=Width, height=Height)
+		if(OperatingSystem=="Windows")
+			Cairo(Width, Height, file=OutputGraph, type="png", bg="white")
+		else
+			png(OutputGraph, width=Width, height=Height)
+
 		Title=gsub('_',' ',Title)
 		Title=gsub('-','    ',Title)
 	}
@@ -1214,9 +1222,9 @@ doProcess <- function(options) {
 	warnings()
 }
 
-write("(2/5) Calling EMD", OutputData2)
+write("(2/5) Loading libraries", OutputData2)
 
-loadLibraries()
+loadLibraries(OperatingSystem)
 	
 write("(3/5) Starting process", OutputData2)
 
diff --git a/src/util.cs b/src/util.cs
index 4f5bb1f..148e16d 100644
--- a/src/util.cs
+++ b/src/util.cs
@@ -1134,6 +1134,7 @@ public class Util
 		pinfo = new ProcessStartInfo();
 
 		string outputFileCheck = "";
+		string operatingSystem = "Linux";
 			
 		pBin="Rscript";
 		//pBin="R";
@@ -1148,12 +1149,13 @@ public class Util
 			es.OutputGraph = es.OutputGraph.Replace("\\","/");
 			es.OutputData1 = es.OutputData1.Replace("\\","/");
 			es.OutputData2 = es.OutputData2.Replace("\\","/");
+			operatingSystem = "Windows";
 		}
 		
 		//--- way A. passing options to a file
 		string scriptOptions = es.InputData + "\n" + 
 		es.OutputGraph + "\n" + es.OutputData1 + "\n" + es.OutputData2 + "\n" + 
-		es.Ep.ToString2("\n") + "\n" + title + "\n";
+		es.Ep.ToString2("\n") + "\n" + title + "\n" + operatingSystem + "\n";
 
 		string optionsFile = Path.GetTempPath() + "Roptions.txt";
 		TextWriter writer = File.CreateText(optionsFile);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]