include_once("GeoCalc.class.php");
include_once("ws_client.php");
include_once("utils.php");
function getStateFromLaln($laln) {
$ret = getWebService("citystate", $laln);
$t = explode(",", $ret);
return $t[1];
}
function getWeatherAlertCountForState($state) {
$weather_alerts = getWeatherEvents($state);
$t = explode("||", $weather_alerts);
$size1 = count($t);
return $size1;
}
function getWeatherAlertsForState($state) {
$weather_alerts = getWeatherEvents($state);
$t = explode("||", $weather_alerts);
return $t;
}
function getWeatherAlertCount($hwy,$state) {
// wrong order on the server
$bbox = getBboxForRoadInState($hwy,$state);
//if($state == "TX")
//echo $bbox."\r\n";
$weather_alerts = getWeatherEvents($state);
$t = explode("||", $weather_alerts);
$t2 = explode(",", $bbox);
$laMax = floatVal($t2[0]);
$lnMin = floatVal($t2[1]);
$laMin = floatVal($t2[2]);
$lnMax = floatVal($t2[3]);
$size1 = count($t);
$alerts_count = 0;
$oGC = new GeoCalc();
for($i=0;$i<$size1;$i++) {
$t1 = explode(";;",$t[$i]);
$fips6 = $t1[5];
// wrong order on the server
$bboxCo = getCountyBbox($fips6);
$laCoMax = floatVal($bboxCo[0]);
$lnCoMin = floatVal($bboxCo[1]);
$laCoMin = floatVal($bboxCo[2]);
$lnCoMax = floatVal($bboxCo[3]);
//if($state == "TX")
//echo "$laCoMax,$lnCoMin,$laCoMin,$lnCoMax\r\n";
if($oGC->isBboxOverlap($laMin,$lnMin,$laMax,$lnMax,$laCoMin,$lnCoMin,$laCoMax,$lnCoMax)) {
$alerts_count++;
}
}
return $alerts_count;
}
function getWeatherAlertsForLaln($la, $ln, $radius) {
if(!isset($radius) || $radius == 0) $radius = 10;
$oGC = new GeoCalc();
$bbox = $oGC->getBbox($la, $ln, $radius);
return getWeatherAlertsForBbox($bbox, "$la,$ln");
}
function getWeatherAlertsForBbox($bbox, $laln) {
$state = getStateFromLaln($laln);
//echo "$state,$bbox,$laln\r\n";
$weather_alerts = getWeatherEvents($state);
//echo $weather_alerts;
$t = explode("||", $weather_alerts);
$oGC = new GeoCalc();
$size1 = count($t);
$bboxWeatherAlerts = "";
for($i=0;$i<$size1;$i++) {
$t1 = explode(";;",$t[$i]);
$fips6 = $t1[5];
$bboxCo = getCountyBbox($fips6);
//print_r($bboxCo) ;
$laCoMax = floatVal($bboxCo[0]);
$lnCoMin = floatVal($bboxCo[1]);
$laCoMin = floatVal($bboxCo[2]);
$lnCoMax = floatVal($bboxCo[3]);
//echo "$laCoMax,$lnCoMin,$laCoMin,$lnCoMax\r\n";
//echo "OKbefore
";
if($oGC->isBboxOverlap($bbox[0],$bbox[1],$bbox[2],$bbox[3],$laCoMin,$lnCoMin,$laCoMax,$lnCoMax)) {
//echo "OKafter
";
//echo $bbox[0] . "," . $bbox[1] . "\r\n";
$laCoMid = ($laCoMax+$laCoMin)/2.0;
$lnCoMid = ($lnCoMax+$lnCoMin)/2.0;
$alerts = $t1[0] . ";;" . $t1[1] . ";;" . $t1[2] . ";;" . $t1[3] . ";;" . $t1[4] . ";;$laCoMid,$lnCoMid";
if(strlen($bboxWeatherAlerts) > 0)
$bboxWeatherAlerts = $bboxWeatherAlerts . "||" . $alerts;
else
$bboxWeatherAlerts = $alerts;
//echo $bbox[0] . "," . $bbox[1] . "\r\n";
}
}
//echo "OK$bboxWeatherAlerts";
return $bboxWeatherAlerts;
}
/*
$la = 34.049482;
$ln=-118.242931;
$radius = 30;
echo getWeatherAlertsForLaln($la, $ln, $radius);
*/
?>
US 29 (VA) weather conditions - Roadnow
US 29 (VA) weather conditions
2026-01-10
Roadnow
US 29 (VA) Sunday Night 2026-01-11 weather conditions
- detailDanville weather: Mostly Clear, 53°F
- detailLynchburg weather: Sunny, 51°F
- detailArrington weather: Mostly Clear, 52°F
- detailNorth Garden weather: Mostly Clear, 52°F
- detailRochelle weather: Sunny, 53°F
- detailReva weather: Sunny, 53°F
- detailBroad Run weather: Mostly Clear, 51°F
- detailLeon weather: Sunny, 53°F
- detailCentreville weather: Mostly Clear, 53°F
- detailMerrifield weather: Mostly Clear, 51°F
Other city weather along US 29 (VA)
GoDanville weather forcastsGoBlairs weather forcastsGoChatham weather forcastsGoGretna weather forcastsGoHurt weather forcastsGoLynchburg weather forcastsGoRustburg weather forcastsGoEvington weather forcastsGoAltavista weather forcastsGoAmherst weather forcastsGoArrington weather forcastsGoLovingston weather forcastsGoFaber weather forcastsGoEsmont weather forcastsGoCharlottesville weather forcastsGoNorth Garden weather forcastsGoCovesville weather forcastsGoEarlysville weather forcastsGoRuckersville weather forcastsGoBarboursville weather forcastsGoRochelle weather forcastsGoPratts weather forcastsGoMadison weather forcastsGoBrightwood weather forcastsGoCulpeper weather forcastsGoReva weather forcastsGoElkwood weather forcastsGoBrandy Station weather forcastsGoBealeton weather forcastsGoWarrenton weather forcastsGoBroad Run weather forcastsGoGainesville weather forcastsGoSweet Briar weather forcastsGoRoseland weather forcastsGoClifford weather forcastsGoLeon weather forcastsGoStevensburg weather forcastsGoRemington weather forcastsGoNokesville weather forcastsGoManassas weather forcastsGoCentreville weather forcastsGoMount Vernon weather forcastsGoClifton weather forcastsGoFairfax weather forcastsGoOakton weather forcastsGoMerrifield weather forcastsGoVienna weather forcastsGoFalls Church weather forcastsGoArlington weather forcasts