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) Tuesday Night 2026-01-13 weather conditions
- detailDanville weather: Partly Cloudy, 41°F
- detailLynchburg weather: Mostly Cloudy, 26°F
- detailArrington weather: Mostly Cloudy, 39°F
- detailNorth Garden weather: Mostly Cloudy, 39°F
- detailRochelle weather: Mostly Cloudy, 25°F
- detailReva weather: Mostly Cloudy, 25°F
- detailBroad Run weather: Mostly Cloudy, 37°F
- detailLeon weather: Mostly Cloudy, 25°F
- detailCentreville weather: Mostly Cloudy, 38°F
- detailMerrifield weather: Mostly Cloudy, 39°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