HEX
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1j PHP/8.4.25
System: Windows NT DESKTOP-4TAV2RJ 10.0 build 19045 (Windows 10) AMD64
User: fred (0)
PHP: 8.4.25
Disabled: NONE
Upload Files
File: C:/xampp/htdocs/FograCT1/pbnCT3sapi.php
<?php 
session_start();

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Spot/Plate Check</title>
<style type="text/css">
<!--
body {
	font: 100% Verdana, Arial, Helvetica, sans-serif;
	background: #ffffff;
	margin: 0; /* 比較好的做法是將 Body 元素的邊界與欄位間隔調整為零,以處理不同的瀏覽器預設值 */
	padding: 0;
	text-align: center; /* 這樣會讓容器在 IE 5* 瀏覽器內置中對齊。然後,文字會在 #container 選取器中設定為靠左對齊預設值 */
	color: #000000;
}
.oneColElsCtr #container {
	width: 46em;
	background: #FFFFFF;
	margin: 0 auto; /* 自動邊界 (搭配寬度) 會讓頁面置中對齊 */
	border: 0px solid #000000;
	text-align: left; /* 這樣做會覆寫 Body 元素上的 text-align: center。 */
}
.oneColElsCtr #mainContent {
	padding: 0 20px; /* 請記住,欄位間隔就是 Div 方塊內部的空間,而邊界就是 Div 方塊外部的空間 */
}
-->
</style></head>

<body class="oneColElsCtr">
<?php
error_reporting(0);

//$color= $_POST['color'];

$f123= $_GET['f123'];
$f321= $_GET['f321'];
$color= $_GET['color'];
$company= $_GET['company'];


function get_betweenC ($text, $s1, $s2) {
$mid_url = "";
$pos_s = strrpos($text,$s1);
$pos_e = strpos($text,$s2);
for ( $i=$pos_s+strlen($s1) ; (( $i<($pos_e)) && $i < strlen($text)) ; $i++ ) {
$mid_url .= $text[$i];
}
return $mid_url;
}



include 'sp38XYZ.php';
include 'spXYZ.php';
include 'lab2xyz.php';
//include 'SCCA51.php';
include 'xyz2lab01.php';
include 'xyz2lab.php';
//include 'DensityV38.php';
include 'DensityV.php';


include 'Density395.php';

include 'vXYZ.php';



$sum=260;
$check=1;
$dtime=time();
$dStr=substr($dtime,6,9)."-";

function RGBToHex($r, $g, $b) {
//String padding bug found and the solution put forth by Pete Williams (http://snipplr.com/users/PeteW)
$hex = "#";
$hex.= str_pad(dechex($r), 2, "0", STR_PAD_LEFT);
$hex.= str_pad(dechex($g), 2, "0", STR_PAD_LEFT);
$hex.= str_pad(dechex($b), 2, "0", STR_PAD_LEFT);
 
return $hex;
}

function adj($C) {
  if (Abs($C) < 0.0031308) {
    return 12.92 * $C;
  }
  return 1.055 * Math.pow($C, 0.41666) - 0.055;
}


	
	echo "Spot/Plate Checking form! " . $color. "<br />";
    
	  
	  $contents = file($f321);
	  	  $filedb=substr($f321,7,60);
	  $dbstr=explode("_", $filedb);
	  echo $dbstr[0]."XX".$dbstr[1]."XX".$dbstr[2]."XX".$dbstr[3].$dbstr[4].$dbstr[5];
	  $filename=$filedb;
	  $po=$dbstr[1];
	  
	  $stringC = implode($contents);

//////////////////////////////////////////////////////////// i1 profiler  go 437




function get_between ($text, $s1, $s2) {
$mid_url = "";
$pos_s = strrpos($text,$s1);
$pos_e = strrpos($text,$s2);
for ( $i=$pos_s+strlen($s1) ; (( $i<($pos_e)) && $i < strlen($text)) ; $i++ ) {
$mid_url .= $text[$i];
}
return $mid_url;
}

	 
$string = implode($contents);		
$datastring=get_between($string,"BEGIN_DATA","END_DATA");
$dot = explode("_", $datastring);////Measure upload
?>

	<p><p>
	
	<table width="200" border="1" align="center">
  <tr>
  	<td><div align="center">主色</div></td>
    <td><font color="#aaaaaa">%</td>

  </tr>
  


  <?php
  //////////////////////////////////////////////////Fogra Media Check
  $psum=20;
 // $pl=95; $pa=-0.01;$pb=-2;

  
?>



<?php
$cols=46; 
$idx=10;
$changebit=0;

if ($dot[133]<>'') {  ////////////Spot 3 or spot 1

   $Pdot=0;  
 $PXm=sp38XYZ("X",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);	

$PYm=sp38XYZ("Y",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);	

$PZm=sp38XYZ("Z",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);	
 
	$Plm=xyz2lab01("l",$PXm,$PYm,$PZm);
	$Plm=xyz2lab01("l",$PXm,$PYm,$PZm);
	$Pbm=xyz2lab01("b",$PXm,$PYm,$PZm);
	
	
echo "Plm=".$Plm."<br>";
	
 $Pdot=1;	

$SXm=sp38XYZ("X",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);

$SYm=sp38XYZ("Y",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);

$SZm=sp38XYZ("Z",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);


	$Sl=xyz2lab01("l",$SXm,$SYm,$SZm);
	$Sa=xyz2lab01("a",$SXm,$SYm,$SZm);
	$Sb=xyz2lab01("b",$SXm,$SYm,$SZm);
	
	echo "$Sl=".$Sl."<br>";
	

 //CT13

$Pdot=2;  //5
 $c5X=sp38XYZ("X",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);
	
	$c5Y=sp38XYZ("Y",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);

	$c5Z=sp38XYZ("Z",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);
	
	
	$c5l=xyz2lab01("l",$c5X,$c5Y,$c5Z);
	$c5a=xyz2lab01("a",$c5X,$c5Y,$c5Z);
	$c5b=xyz2lab01("b",$c5X,$c5Y,$c5Z);	




echo "<br>lab:".$Sl."_".$Sa."_".$Sb."_";

$ch=pow((pow($Sa,2)+pow($Sb,2)),0.5);
echo "<br>ch:".$ch."<br>";

$hue=atan2($Sa,$Sb);
$deg = ($hue/M_PI*180) + ($hue > 0 ? 0 : 360);
echo "<br>hue:".$deg;


if ($Plm<87) {
	$PnC='plate';}
else {
	$PnC='Spot';
}
echo "<br>Type:".$PnC."<br>";

		$c5dv=100*pow(((pow(($c5X-$PXm),2)+pow(($c5Y-$PYm),2)+pow(($c5Z-$PZm),2))/(pow(($SXm-$PXm),2)+pow(($SYm-$PYm),2)+pow(($SZm-$PZm),2))),0.5); //sctv
		echo "dv5:".$c5dv."zz<br>";	
			//$c5dv= 0.01071207430340557 + (0.9194349992628631*$c5dv) + (0.0008057201828099661*pow($c5dv,2));
	//echo "plate dv5:".$c5dv."zz<br>";	




echo "snV:".$PXm."_".$PYm."_".$PZm."_SX:".$SXm."_SY:".$SYm."_SZ:".$SZm;

////////////////////////////////////////////////////Hex RGB//////////
$var_X = $SXm / 1.00;
$var_Y = $SYm / 1.00;
$var_Z = $SZm / 1.00;

$var_R =  3.2404542*$var_X - 1.5371385*$var_Y - 0.4985314*$var_Z;
$var_G = -0.9692660*$var_X + 1.8760108*$var_Y + 0.0415560*$var_Z;
$var_B =  0.0556434*$var_X - 0.2040259*$var_Y + 1.0572252*$var_Z;

$var_R=adj($var_R);
$var_G=adj($var_G);
$var_B=adj($var_B);

if ($var_R<0) {
$var_R=0;	
}
if ($var_G<0) {
$var_G=0;	
}
if ($var_B<0) {
$var_B=0;	
}
$sR = round($var_R * 255,0);
$sG = round($var_G * 255,0);
$sB = round($var_B * 255,0);

$ch1C3=RGBToHex($sR,$sG,$sB);

 $TRGB=substr($ch1C3,1);
 echo "TRGB:".$TRGB;
////////////////////////////////////////////////////Hex RGB//////////
$_SESSION["PXm"] = "$PXm";
$_SESSION["PYm"] = "$PYm";
$_SESSION["PZm"] = "$PZm";
$_SESSION["SXm"] = "$SXm";
$_SESSION["SYm"] = "$SYm";
$_SESSION["SZm"] = "$SZm";
$_SESSION["PnC"] = "$PnC";
$_SESSION["deg"] = "$deg";
$_SESSION["TRGB"] = "$TRGB";
}
else {   ////////////////////////////single point
	echo "<br>single point";
	

$PXm=$_SESSION["PXm"] ;
$PYm=$_SESSION["PYm"];
$PZm=$_SESSION["PZm"];
$SXm=$_SESSION["SXm"];
$SYm=$_SESSION["SYm"];
$SZm=$_SESSION["SZm"];
$PnC=$_SESSION["PnC"];
$TRGB=$_SESSION["TRGB"];
$deg=$_SESSION["deg"];
	


echo "snV:".$PXm."_".$PYm."_".$PZm."_SX:".$SXm."_SY:".$SYm."_SZ:".$SZm;
	$Pdot=0;
	 $c5X=sp38XYZ("X",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);
	
	$c5Y=sp38XYZ("Y",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);

	$c5Z=sp38XYZ("Z",$dot[$idx+$cols*$Pdot],$dot[$idx+$cols*$Pdot+1],$dot[$idx+$cols*$Pdot+2],$dot[$idx+$cols*$Pdot+3],$dot[$idx+$cols*$Pdot+4],$dot[$idx+$cols*$Pdot+5],$dot[$idx+$cols*$Pdot+6],$dot[$idx+$cols*$Pdot+7],$dot[$idx+$cols*$Pdot+8],$dot[$idx+$cols*$Pdot+9],$dot[$idx+$cols*$Pdot+10],$dot[$idx+$cols*$Pdot+11],$dot[$idx+$cols*$Pdot+12],$dot[$idx+$cols*$Pdot+13],$dot[$idx+$cols*$Pdot+14],$dot[$idx+$cols*$Pdot+15],$dot[$idx+$cols*$Pdot+16],$dot[$idx+$cols*$Pdot+17],$dot[$idx+$cols*$Pdot+18],$dot[$idx+$cols*$Pdot+19],$dot[$idx+$cols*$Pdot+20],$dot[$idx+$cols*$Pdot+21],$dot[$idx+$cols*$Pdot+22],$dot[$idx+$cols*$Pdot+23],$dot[$idx+$cols*$Pdot+24],$dot[$idx+$cols*$Pdot+25],$dot[$idx+$cols*$Pdot+26],$dot[$idx+$cols*$Pdot+27],$dot[$idx+$cols*$Pdot+28],$dot[$idx+$cols*$Pdot+29],$dot[$idx+$cols*$Pdot+30],$dot[$idx+$cols*$Pdot+31],$dot[$idx+$cols*$Pdot+32],$dot[$idx+$cols*$Pdot+33],$dot[$idx+$cols*$Pdot+34],$dot[$idx+$cols*$Pdot+35]);
	
	$c5l=xyz2lab01("l",$c5X,$c5Y,$c5Z);
	$c5a=xyz2lab01("a",$c5X,$c5Y,$c5Z);
	$c5b=xyz2lab01("b",$c5X,$c5Y,$c5Z);
	

////////////////////////////////////////////////////Hex RGB//////////
$var_X = $c5X / 1.00;
$var_Y = $c5Y / 1.00;
$var_Z = $c5Z / 1.00;

$var_R =  3.2404542*$var_X - 1.5371385*$var_Y - 0.4985314*$var_Z;
$var_G = -0.9692660*$var_X + 1.8760108*$var_Y + 0.0415560*$var_Z;
$var_B =  0.0556434*$var_X - 0.2040259*$var_Y + 1.0572252*$var_Z;

$var_R=adj($var_R);
$var_G=adj($var_G);
$var_B=adj($var_B);

if ($var_R<0) {
$var_R=0;	
}
if ($var_G<0) {
$var_G=0;	
}
if ($var_B<0) {
$var_B=0;	
}
$sR = round($var_R * 255,0);
$sG = round($var_G * 255,0);
$sB = round($var_B * 255,0);

$ch1C3=RGBToHex($sR,$sG,$sB);

 $TRGB2=substr($ch1C3,1);
 echo "TRGB2:".$TRGB2;
 
$hue=atan2($c5a,$c5b);
$deg2 = ($hue/M_PI*180) + ($hue > 0 ? 0 : 360);
echo "<br>hue2:".$deg2;
////////////////////////////////////////////////////Hex RGB//////////


		

if ($PnC=="plate") {
	$ch1C3='#000000';
}
else {
	$ch1C3="#".$TRGB;
	
	if (abs($deg2-$deg)>15) {
		echo "<br><font color='red'> 變更色彩! change Color:".$color2."deg:".abs($deg2-$deg);
	$changebit=1;
	$_SESSION["SXm"] = "$c5X";
	$_SESSION["SYm"] = "$c5Y";
	$_SESSION["SZm"] = "$c5Z";
	$_SESSION["TRGB"] = "$TRGB2";
	$_SESSION["deg"] = "$deg2";
	echo "<br> 量測網點!<br>";
	}

}	
	
	$c5dv=100*pow(((pow(($c5X-$PXm),2)+pow(($c5Y-$PYm),2)+pow(($c5Z-$PZm),2))/(pow(($SXm-$PXm),2)+pow(($SYm-$PYm),2)+pow(($SZm-$PZm),2))),0.5); //sctv
	echo "dv5:".$c5dv."zz<br>";	
	
	
	//$c5dv= 0.01071207430340557 + (0.9194349992628631*$c5dv) + (0.0008057201828099661*pow($c5dv,2));
	//echo "plate dv5:".$c5dv."zz<br>";	


	
}


?>

<br>

<tr>
<td bgcolor="<?php echo $ch1C3; ?>"><div align="center"></div></td>
<td bgcolor="#cccccc"><div align="right"><?php if ($changebit==1) {echo "";}else {echo round($c5dv,2);} $changebit=0;?> </td>
</tr>
</table>
<?php
 
 ////////////////////////////////////////////////////////////////
  $connection =mysql_connect("127.0.0.1", "root", "fredsql") or die ("Unable to connect!");
	mysql_query("SET NAMES 'utf8'");
	$db = "tvicheck-st";
		// select database
		mysql_select_db($db) or die ("Unable to select database!");

		// generate and execute query
		//$query = "INSERT INTO platecv(company, dns, contact, email, color, po, filename, T95,T90,T85,T80,T75,T70,T65,T60,T55,T45,T40,T35,T30,T25,T20,T15,T10,T5,T50,score, passbit, date, device, CT, printer, paper, ink, rankbit,p0d,c100d,rsq) VALUES('$company', '$myip', '$contact', '$email', '$color', '$po','$filename','$T95','$T90','$T85','$T80','$T75','$T70','$T65','$T60','$T55','$T45','$T40','$T35','$T30','$T25','$T20','$T15','$T10','$T5','$T50','$Rsum', '$passbit', NOW(), '$device', '13', '$press', '$paper', '$ink', '$rankbit', '$p0d', '$c100d','$R_Squared')";
		
		//echo $query;
		//$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
  
		mysql_close($connection);

 ?>


<tr>
<td align="center"><font size="-2"> &copy; <a href="mailto:[email protected]">Fred Kuo</a>, 2021. All rights reserved.<br><a href="http://www.fredkuo.idv.tw/wordpress/?p=1025">Read more.</a><br>
</td>
</tr>
</body>


</html>